在现有的镜像上进行修改。
前言
将常用的命令放在这儿,再附加一个例子。
# 将停止的容器固化为镜像
docker commit -m="<MSG>" -a="<AUTHOR>" <容器标识> <REPOSITORY>:<TAG>
# 为镜像设置标签
docker tag <镜像标识> <REPOSITORY>:<TAG>
# 删除镜像
docker rmi -f <镜像标识>
例子
- 下面我们要:
- 下载一个Ubuntu镜像,并且在/home下创建一个test.txt文件,并且更新镜像
- 下面我们开始实现
# 下载镜像
D:\Workspace\docker>docker pull ubuntu
# 镜像是只读的,为了更新它,只能在容器内让它跑起来
D:\Workspace\docker>docker run -it ubuntu /bin/bash
[email protected]:/# cd /home
[email protected]:/home# echo haha > test.txt
[email protected]:/home# exit
# 看看我们刚刚做了修改的容器
D:\Workspace\docker>docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
abe6c138d90c ubuntu "/bin/bash" About a minute ago Exited (0) About a minute ago priceless_hertz
2f8e98f48ab1 python:3.8 "python index.py" About an hour ago Exited (137) 53 minutes ago test_web
# 从刚刚做了修改的容器创建一个新的镜像
D:\Workspace\docker>docker commit -m="Test update ubuntu image" -a="nicelee" abe6c138d90c nicelee/ubuntu:dev
sha256:xxxxxxxxxxxxxxxxxxx
# 查看镜像状态,新镜像已经OK
D:\Workspace\docker>docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nicelee/ubuntu dev ffa2ffd92f89 20 seconds ago 72.8MB
python 3.8 3030a34758f6 4 days ago 909MB
ubuntu latest 597ce1600cf4 9 days ago 72.8MB
# 为了验证状态,运行新镜像,查看/home/test.txt内容
D:\Workspace\docker>docker run -it nicelee/ubuntu:dev
[email protected]:/# cat /home/test.txt
haha
[email protected]:/# exit