一、从公网docker hub 拉取image
~ # 搜索docker search centos
~ » docker pull centos admin@steven-
Using default tag: latest
latest: Pulling from library/centos
469cfcc7a4b3: Downloading .28MB/.17MB
或者:把之前下载好的image镜像导入image
docker load -i /root/centos.xxx.xxx.xx.tar. # -i 指定载入的镜像归档
二、查看 images 列表,docker 的镜像和数据都是在/var/lib/docker 目录下。
~ » docker images admin@steven-
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest ae513a47849c weeks ago 109MB
centos latest e934aafc2206 weeks ago 199MB
------------------------------------------------------------
三、制作docker iamage 的两种方法
1、docker commit # 保存container 的当前状态到 image 后,然后生成对应的 image
例:创建一个安装好的 nmap 黑客扫描工具的容器镜像
~ » docker run -it centos /bin/bash admin@steven-
[root@ca699c8d7b09 /]# yum -y install nmap-ncat # 在 container中安装 nmap-ncat Loaded plugins: fastestmirror, ovl
base | 3.6 kB ::
extras | 3.4 kB ::
updates
。。。。
2、根据容器当前状态做一个 image 镜像:创建一个安装了 nmap-ncat 工具的centos镜像。
语法:docker commit <container 的 ID> <image_name>
~ » docker ps -a # 查看容器ID: admin@steven-
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ca699c8d7b09 centos "/bin/bash" minutes ago Exited () About a minute ago priceless_lumiere
fafd41a29849 nginx "nginx -g 'daemon of…" minutes ago Created webserver
------------------------------------------------------------
~ » docker commit ca699c8d7b09 centos:nmap admin@steven-
sha256:34bad9a4e5c9c623239ee4b5f2946ef6eba38dffcfb6018bc5d41a35531a7a01
~ » docker images admin@steven-
REPOSITORY TAG IMAGE ID CREATED SIZE
centos nmap 34bad9a4e5c9 49 seconds ago 269MB
nginx latest ae513a47849c weeks ago 109MB
centos latest e934aafc2206 weeks ago 199MB
使用新建的 centos:nmap 镜像,生成一台容器实例:
~ » docker run -ti centos:nmap /bin/bash admin@steven-
[root@f2218082e046 /]# rpm -qa nmap -ncat
方法二:使用 docker build 创建一个基于 centos 的httpd wdb服务器镜像。