docker 已有镜像修改更新, 修改容器后生成镜像
docker 已有镜像修改更新1) docker images # 列出所有镜像以wiscan/wiscan_server:3.2.0 为例,修改生成wiscan/wiscan_server:3.3.02) docker run -it --name my_test wiscan/wiscan_server:3.2.0 /bin/bash#生成容器并进入容器,容器名为 my_test3) 在容器中
docker 已有镜像修改更新
1) docker images # 列出所有镜像
以wiscan/wiscan_server:3.2.0 为例,修改生成wiscan/wiscan_server:3.3.0
2) docker run -it --name my_test wiscan/wiscan_server:3.2.0 /bin/bash
#生成容器并进入容器,容器名为 my_test
3) 在容器中修改想要修改的东西, 完成后退出容器(exit 或Ctrl+D)
也可以将容器外的文件复制到容器内,安装某些工具包等(如pip install ...),如下:
①先退出容器(exit 或Ctrl+D)
② docker ps -a 查看所有容器, 可以看到已存在my_test容器
③ docker cp my_file my_test:/root/ # 将my_file复制到容器内的/root目录下(下图复制的是docker-compose.yml文件)
④docker start my_test # 启动已存在的(但是暂停的)容器my_test
docker ps # 可查看已启动的容器 (docker ps -a 是查看所有容器,包括已停止的容器)
⑤ docker exec -it my_test /bin/bash # 进入容器
cd /root/ # 进到root目录下
ll # 可以看到my_file已复制进来
⑥确保修改完成后,退出容器(exit 或Ctrl+D)
4)docker commit my_test wiscan/wiscan_server:3.3.0 # 将修改后的容器上传为镜像,命名为wiscan/wiscan_server:3.3.0 ,(其中冒号后3.3.0为标签)
5)docker images # 查看所有镜像,可以看到新镜像已生成
另外:
可 打包镜像tar包,如下
docker save wiscan/wiscan_server:3.3.0 > ./wiscan-wiscan_server_3.3.0.tar
ll # 可以看到新镜像包已打包到当前目录下
在新的机器上,可以通过下面命令,导入改镜像
docker load < ./wiscan-wiscan_server_3.3.0.tar # 导入当前目录下的镜像
可 删除测试容器
docker stop my_test # 停止容器
docker rm my_test # 删除容器(必须先停止容器才能删除)
可 删除测试镜像
docker rmi wiscan/wiscan_server:3.3.0
更多推荐
所有评论(0)