天天看点

docker镜像、容器管理

Docker优势

1) 更高效的利用系统资源

无论是应用执行速度、内存损耗或者文件存储速度,都要比传

统虚拟机技术更高效。

2)更快速的启动时间

Docker 容器应用,由于直接

运行于宿主内核,无需启动完整的操作系统,因此可以做到秒级、甚至毫秒级的启

动时间。

3)一致的运行环境

Docker 的镜像提供了除内核外完整的运行时环境,确保了应用运行环境一致性

4)持续交付和部署

使用 Docker 可以通过定制应用镜像来实现持续集成、持续交付、部署。

二:为什么要使用Docker

不仅仅开发团队可以理解应用运行环

境,也方便运维团队理解应用运行所需条件,帮助更好的生产环境中部署该镜像

5)更轻松的迁移

Docker 可以在很多平台上运行,无论是物理机、虚拟机、公有云、私有云,甚至是笔记本,其运行结果是一致的,不用担心运行环境的变化导致应用无法正常运行的情况。

6)更轻松的维护和扩展

Docker 使用的分层存储以及镜像的技术,使得应用重复部分的复用更为容易,也

使得应用的维护更新更加简单。

7)对比传统虚拟机

特性

       容器

        虚拟机

硬盘使用

一般为MB

一般为GB

系统支持量

单机支持上千个容器

一般为几十个

首先使用yum安装docker

<a href="https://s1.51cto.com/wyfs02/M01/9E/AC/wKioL1mUSJWi7udwAAAMoyrGPuU491.png-wh_500x0-wm_3-wmp_4-s_557434166.png" target="_blank"></a>

查看docker版本信息

<a href="https://s2.51cto.com/wyfs02/M02/9E/AC/wKioL1mUSLrTuyrCAAAZg-dim5s326.png-wh_500x0-wm_3-wmp_4-s_1563791843.png" target="_blank"></a>

或者使用docker info 俩种办法

<a href="https://s3.51cto.com/wyfs02/M00/9E/AC/wKioL1mUSN-ytjlQAAAqLhz5HsA137.png-wh_500x0-wm_3-wmp_4-s_1046044068.png" target="_blank"></a>

显示本机images

PEPOSITORY——来自哪个仓库 TAG——标记 IMAGE ID——镜像ID号  CREATED——创建时间  SIZE——镜像大小

<a href="https://s5.51cto.com/wyfs02/M01/9E/AC/wKioL1mUSPKTtr08AAATudAGHdI477.png-wh_500x0-wm_3-wmp_4-s_866247503.png" target="_blank"></a>

查找images镜像

获取下载images镜像

<a href="https://s3.51cto.com/wyfs02/M02/9E/AC/wKioL1mUSTmx5gfTAAAeQJP6Gnc989.png-wh_500x0-wm_3-wmp_4-s_766902537.png" target="_blank"></a>

查看文件镜像

<a href="https://s3.51cto.com/wyfs02/M00/9E/AC/wKioL1mUSUyR9fxgAAAtwdShF24527.png-wh_500x0-wm_3-wmp_4-s_2542496006.png" target="_blank"></a>

或者  俩种办法

<a href="https://s5.51cto.com/wyfs02/M01/9E/AC/wKioL1mUSWChLxjRAAAXuf4tDh4252.png-wh_500x0-wm_3-wmp_4-s_242351813.png" target="_blank"></a>

使用docker commit来扩展一个image

<a href="https://s3.51cto.com/wyfs02/M01/9E/AC/wKioL1mUSW7iUPqgAAALWCgKoxY226.png-wh_500x0-wm_3-wmp_4-s_228690803.png" target="_blank"></a>

在容器种添加mariadb  需要yum

<a href="https://s1.51cto.com/wyfs02/M02/9E/AC/wKioL1mUSX7RbNJUAAAggUcav9I370.png-wh_500x0-wm_3-wmp_4-s_547885817.png" target="_blank"></a>

<a href="https://s3.51cto.com/wyfs02/M02/9E/AC/wKioL1mUSYqzL8F3AAAk3w0LoCY884.png-wh_500x0-wm_3-wmp_4-s_245613559.png" target="_blank"></a>

查看结果

<a href="https://s2.51cto.com/wyfs02/M00/9E/AC/wKioL1mUSZizeS92AAAYyIEL7K4146.png-wh_500x0-wm_3-wmp_4-s_2246531702.png" target="_blank"></a>

1) 从dockerfile来创建image

#this is a comment

FROM docker.io/jdeathe/centos-ssh:latest

MAINTAINER tom &lt;[email protected]&gt;

RUN yum -q -y install apr apr-util

    RUN yum -q -y install httpd

然后生成镜像

<a href="https://s3.51cto.com/wyfs02/M01/9E/AC/wKioL1mUScjTfgN9AAA68x74gT8544.png-wh_500x0-wm_3-wmp_4-s_740184524.png" target="_blank"></a>

<a href="https://s1.51cto.com/wyfs02/M02/9E/AC/wKioL1mUSenCKdulAAAha69v0SI830.png-wh_500x0-wm_3-wmp_4-s_20941067.png" target="_blank"></a>

修改镜像标签

<a href="https://s4.51cto.com/wyfs02/M00/9E/AC/wKioL1mUSfjgDd2wAAAz5q4WoSk014.png-wh_500x0-wm_3-wmp_4-s_4279638716.png" target="_blank"></a>

从本地镜像导入

<a href="https://s3.51cto.com/wyfs02/M00/9E/AC/wKioL1mUSgyBST8bAAA0hrmMeuU327.png-wh_500x0-wm_3-wmp_4-s_3340058962.png" target="_blank"></a>

上传镜像 登录用户名 密码

<a href="https://s1.51cto.com/wyfs02/M00/9E/AC/wKioL1mUSmeA3O12AAAYbVcb9ko736.png-wh_500x0-wm_3-wmp_4-s_1030524504.png" target="_blank"></a>

<a href="https://s3.51cto.com/wyfs02/M02/9E/AC/wKioL1mUSnSgf66VAAAVNzmDpa0114.png-wh_500x0-wm_3-wmp_4-s_2528732131.png" target="_blank"></a>

二 移除本地镜像

<a href="https://s2.51cto.com/wyfs02/M00/9E/AC/wKioL1mUSoPj9iceAAAshaFxujc997.png-wh_500x0-wm_3-wmp_4-s_2667968558.png" target="_blank"></a>

存出镜像

<a href="https://s4.51cto.com/wyfs02/M01/9E/AC/wKioL1mUSpGx4nj7AAAOJSmeAlU753.png-wh_500x0-wm_3-wmp_4-s_211660318.png" target="_blank"></a>

载入

从本地镜像导入镜像库

<a href="https://s4.51cto.com/wyfs02/M02/9E/AC/wKioL1mUStXBeRneAAAK3iymRQI976.png-wh_500x0-wm_3-wmp_4-s_1158326608.png" target="_blank"></a>

三 容器

Docker包括三个概念

镜像(lmage) 容器(Container) 仓库(Repository)

1)Docker 镜像

对于 Linux 而言,内核启动后,会挂载 root 文件系统为其提供用户空间支持。而 Docker 镜像(Image),就相当于是一个 root 文件系统。

2)Docker 镜像是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资

源、配置等文件外,还包含了一些为运行时准备的一些配置参数(如匿名卷、环境

变量、用户等)。

3)镜像不包含任何动态数据,其内容在构建之后也不会被改变。

4)镜像构建时,会一层层构建,前一层是后一层的基础。每一层构建完就不会再发生

改变,后一层上的任何改变只发生在自己这一层

如,删除前一层文件的操作,实际不是真的删除前一层的文件,而是仅在当前层标记为该文件已删除。在最终容器运行的时候,虽然不会看到这个文件,但是实际上该文件会一直跟随镜像。

1镜像容器

<a href="https://s4.51cto.com/wyfs02/M00/9E/AC/wKioL1mUSuuwwjRqAAAIYs_w_MA523.png-wh_500x0-wm_3-wmp_4-s_352342729.png" target="_blank"></a>

命令使用

<a href="https://s1.51cto.com/wyfs02/M01/9E/AC/wKioL1mUSvriDyznAAAZGjB5kSU704.png-wh_500x0-wm_3-wmp_4-s_63830270.png" target="_blank"></a>

<a href="https://s4.51cto.com/wyfs02/M02/9E/AC/wKioL1mUSw3RSy6OAAAmUETB6os183.png-wh_500x0-wm_3-wmp_4-s_2734523387.png" target="_blank"></a>

命令输出

<a href="https://s5.51cto.com/wyfs02/M00/9E/AC/wKioL1mUS3ajrtUwAAAecgLpJxk129.png-wh_500x0-wm_3-wmp_4-s_3809941071.png" target="_blank"></a>

查看容器  帮助 docker ps -h

<a href="https://s3.51cto.com/wyfs02/M02/9E/AD/wKioL1mUS6CDdoP7AAAgfBEztEk171.png-wh_500x0-wm_3-wmp_4-s_719691919.png" target="_blank"></a>

容器启动

<a href="https://s2.51cto.com/wyfs02/M01/9E/AD/wKioL1mUS9Kgt36kAAAuiFkRXAA202.png-wh_500x0-wm_3-wmp_4-s_1682212583.png" target="_blank"></a>

 容器停止

<a href="https://s4.51cto.com/wyfs02/M02/9E/AD/wKioL1mUS_qD4z54AAAq0nSwOLw513.png-wh_500x0-wm_3-wmp_4-s_718512833.png" target="_blank"></a>

容器进程守护

<a href="https://s2.51cto.com/wyfs02/M00/9E/AD/wKioL1mUTA2AaS5KAAAPPOWMTSI825.png-wh_500x0-wm_3-wmp_4-s_3848357919.png" target="_blank"></a>

查看容器信息 ID 容器名等

<a href="https://s4.51cto.com/wyfs02/M01/9E/AD/wKioL1mUTCmgws6pAAAgBi6O1Hk174.png-wh_500x0-wm_3-wmp_4-s_1542159111.png" target="_blank"></a>

进入容器

<a href="https://s1.51cto.com/wyfs02/M01/9E/AD/wKioL1mUTFGCS3ZdAAAJDU9DI4M806.png-wh_500x0-wm_3-wmp_4-s_270347188.png" target="_blank"></a>

<a href="https://s3.51cto.com/wyfs02/M02/9E/AD/wKioL1mUTF7z7zEPAAAIzZpitBE677.png-wh_500x0-wm_3-wmp_4-s_1088107701.png" target="_blank"></a>

删除处于UP的容器

<a href="https://s4.51cto.com/wyfs02/M00/9E/AD/wKioL1mUTG_AB4L8AAAIgajbzWg877.png-wh_500x0-wm_3-wmp_4-s_1520954467.png" target="_blank"></a>

批量删除多个容器

<a href="https://s4.51cto.com/wyfs02/M00/9E/AD/wKioL1mUTH_zd0rwAAAHyq_IECY467.png-wh_500x0-wm_3-wmp_4-s_113258451.png" target="_blank"></a>

     本文转自柴鑫旺 51CTO博客,原文链接:http://blog.51cto.com/chaixinwang/1956900,如需转载请自行联系原作者