Docker | 07.镜像构建 - 将容器转为镜像

参考视频

19-dockerfile-容器转为镜像

1.将容器转为镜像

eg:在tomcat镜像I1容器C1中,部署了一个项目,并将C1转成一个全新的镜像I2。此后运行这个全新的镜像I2并生成一个容器C2时,该容器内部就会包含先前部署好的项目。

注意:容器转成镜像时,只会将容器中非数据卷的目录或文件打包进镜像,数据卷对应的目录和文件并不会打包进镜像。

image-20220601151104153

2.将mysql容器转为镜像

  1. [生成并操作容器] 先运行mysql镜像生成容器,挂载数据卷,并操作该容器(新增一个名为test_docker_db的数据库)

    image-20220601101638206

    image-20220601104627801

  2. [将容器转为镜像] 查看该容器的id,并根据id将容器转为镜像

    # 查看所有容器(目的是查询容器id)
    docker ps -a
    
    # 将容器转为镜像
    docker commit <容器id> <新镜像名称>:<新镜像版本号>
    

    image-20220601152949810

  3. [运行新镜像生成容器] 使用docker run命令运行新镜像并生成一个容器

    image-20220601154044341

  4. [进入容器查看文件情况] 使用docker exec进入新生成的mysql容器:

    • 可以用root@123456进行登录,说明非数据卷的数据成功被打包进了镜像中;
    • 先前容器创建的数据库表丢失,说明数据卷的数据没有被打包进镜像。

    image-20220601154404940

3.镜像的传输

相关指令如下

# 将镜像转为压缩文件
docker save -o <压缩文件名称> <镜像名称>:<镜像版本号>

# 将压缩文件还原成镜像
docker load -i <压缩文件名称>

使用docker save -o将镜像转换成压缩文件之后,就可以借助U盘等工具将传输镜像了。

接受方接收到压缩文件,使用docker load即可将压缩文件还原成docker镜像。

image-20220602182901959

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值