docker commit
交互式创建:使用镜像启动容器,在该容器基础上修改另存为另一个镜像
[root@docker ~ ]# docker run -itd centos bash
[root@docker ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
4f6b7d8a333a centos "/bin/bash" About an hour ago Up About an hour gloomy_leakey
[root@docker ~]# docker exec -it 4f6b7d8a333a bash
[root@4f6b7d8a333a /]# cd /etc/yum.repos.d/
[root@4f6b7d8a333a /]# rm -rf *
[root@4f6b7d8a333a /]# vim local.repo
[local_repo]
name=centos7
baseurl=ftp://192.168.4.254/CentOS7
enabled=1
gpgcheck=0
[root@4f6b7d8a333a yum.repos.d]# yum -y install lftp vim psmisc bash-completion
[root@4f6b7d8a333a /]# exit
[root@docker ~]# docker commit 4f6b7d8a333a mytest:latest
脚本创建:
Dockerfile语法格式
– FROM:基础镜像
– MAINTAINER:镜像创建者信息
– EXPOSE:开放的端口
– ENV:设置变量
– ADD:复制文件到镜像
– RUN:制作镜像时执行的命令,可以有多个
– WORKDIR:定义容器默认工作目录
– CMD:容器启动时执行的命令,仅可以有一条CMD