码头工人和镜像的操作示例

  介绍

这篇文章主要介绍码头工人和镜像的操作示例,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

查找镜像

我们可以从码头工人中心网站来搜索镜像,码头工人中心网址为:https://hub.docker.com/

我们也可以使用码头工人搜索命令来搜索镜像。比如我们需要一个httpd的镜像来作为我们的web服务。我们可以通过码头工人搜索命令搜索httpd来寻找适合我们的镜像。

docker  search  httpd

拖取镜像

我们决定使用上图中的httpd官方版本的镜像,使用命令码头工人拉来下载镜像。

docker  pull  httpd

删除镜像
镜像删除使用码头工人rmi命令,比如我们删除hello world镜像:

,美元docker  rmi  hello world

创建镜像

当我们从码头工人镜像仓库中下载的镜像不能满足我们的需求时,我们可以通过以下两种方式对镜像进行更改。

1,从已经创建的容器中更新镜像,并且提交这个镜像
2,使用Dockerfile指令来创建一个新的镜像

更新镜像

更新镜像之前,我们需要使用镜像来创建一个容器。

runoob@runoob: ~,美元docker  run  -t 小姐,ubuntu: 15.10/bin/bash   root@e218edb10161:/#

在运行的容器内使用apt-get更新命令进行更新。

在完成操作之后,输入出口命令来退出这个容器。

此时ID为e218edb10161的容器,是按我们的需求更改的容器。我们可以通过命令码头工人承诺来提交容器副本。

runoob@runoob: ~,美元docker  commit  - m=癶as  update", a=皉unoob" e218edb10161  runoob/ubuntu: v2   sha256:70bf1840fd7c0d2d8ef0a42a817eb29f854c1af8f7c59fc03ac7bdee9545aff8

各个参数说明:

<李>

- m:提交的描述信息

<李>

——:指定镜像作者

<李>

e218edb10161:容器ID

<李>

runoob/ubuntu: v2:指定要创建的目标镜像名

构建镜像
我们使用命令码头工人建造,从零开始来创建一个新的镜像。为此,我们需要创建一个Dockerfile文件,其中包含一组指令来告诉码头工人如何构建我们的镜像。

runoob@runoob: ~,美元cat  Dockerfile    得到centos: 6.7   MAINTAINER ,, Fisher “fisher@sudops.com"      RUN ,,/bin/echo  & # 39;根:123456 & # 39;| chpasswd   RUN , useradd  runoob   RUN ,,/bin/echo  & # 39; runoob: 123456 & # 39; | chpasswd   RUN ,,/bin/echo  -e “LANG=\“en_US.UTF-8 \““,在/etc/违约/当地   EXPOSE  22   EXPOSE  80   CMD ,,/usr/sbin/sshd  - d

每一个指令都会在镜像上创建一个新的层,每一个指令的前缀都必须是大写的。

第一条,指定使用哪个镜像源

运行指令告诉码头工人在镜像内执行命令,安装了什么…

然后,我们使用Dockerfile文件,通过码头工人建造命令来构建一个镜像。

runoob@runoob: ~,美元docker  build  -t  runoob/centos: 6.7,。   Sending  build  context 用Docker  daemon  17.92 kB   Step  1,:得到centos: 6.7   ,,和,gt; d95b5ca17cc3   Step  2,:, MAINTAINER  Fisher “fisher@sudops.com"   ,,和,gt; Using 缓存   ,,和,gt; 0 c92299c6f03   Step  3,:, RUN /bin/echo  & # 39;根:123456 & # 39;| chpasswd   ,,和,gt; Using 缓存   ,,和,gt; 0397 ce2fbd0a   Step  4,: RUN  useradd  runoob   ……

参数说明:

- t:指定要创建的目标镜像名

。:Dockerfile文件所在目录,可以指定Dockerfile的绝对路径

使用码头工人图片查看创建的镜像已经在列表中存在,镜像ID为860 c279d2fec

runoob@runoob: ~,美元docker  images    REPOSITORY ,,,, TAG ,,,,,,,, IMAGE  ID ,,,,, CREATED ,,,,,,的大小   runoob/centos ,,, 6.7,,,,,,,,, 860 c279d2fec ,,, About  a  minute  ago , 190.6 MB   runoob/ubuntu ,,, v2 ,,,,,,,, 70 bf1840fd7c ,,, 17, hours  ago ,,,,, 158.5 MB   ubuntu ,,,,,, 14.04,,,,,,,, 90 d5884b1ee0 ,,, 6, days  ago ,,,,,, 188 MB   php ,,,,,,,, 5.6,,,,,,,,, f40e9e0f10c8 ,,, 10, days  ago ,,,,, 444.8 MB   nginx ,,,,,,, latest ,,,,,, 6 f8d099c3adc ,,, 12, days  ago ,,,,, 182.7 MB   mysql ,,,,,,, 5.6,,,,,,,,, f2e8d6c772c0 ,,, 3, weeks  ago ,,,,, 324.6 MB   httpd ,,,,,,, latest ,,,,,, 02年ef73cf1bc0 ,,, 3, weeks  ago ,,,,, 194.4 MB   ubuntu ,,,,,, 15.10,,,,,,,, 4 e3b13c8a266 ,,, 5, weeks  ago ,,,,, 136.3 MB   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

码头工人和镜像的操作示例