LV005-从容器创建镜像
一、Docker commit 命令
docker commit 命令用于将容器的当前状态保存为一个新的 Docker 镜像,以便在将来可以重用或分发该镜像。命令格式如下:
shell
docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]【OPTIONS】
- -a : 提交的镜像作者。
- -c : 使用 Dockerfile 指令来创建镜像。
- -m : 提交时的说明文字。
- -p : 提交镜像前暂停容器(默认为 true)。
二、创建镜像
1. 制作容器
首先使用交互式运行一个 alpine 容器。
shell
docker run -it alpine然后我们在容器中执行一些命令,比如安装一个软件,然后退出容器。
shell
apk update
apk add figlet
figlet "hello docker"
exit这样,我们就在 alpine 容器中安装了 figlet 工具,当然,之后我们会安装一些更加有用的软件, 比如 git,nginx 等等。
2. 保存成镜像
然后我们需要将这个新的容器环境跟其他人分享,我们可以通过 commit 命令将容器保存为一个镜像。
shell
docker ps -a # 查看容器
docker commit <container_id>这样,我们就创建了一个装有 figlet 的镜像,我们可以通过 docker image 命令查看。
shell
docker image ls从上一个命令中,获取新创建镜像的 ID,将其重新 tag 为 alpine-figlet。
shell
docker tag <image_id> alpine-figlet然后我们就可以使用这个新的镜像了。
shell
docker run alpine-figlet figlet "hello docker"最后我们也可以使用 docker push 命令将镜像推送到镜像仓库中,其他人便可以使用 docker pull 来使用这个镜像了。