ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Docker容器镜像制作

2021-11-05 13:02:25  阅读:148  来源: 互联网

标签:容器 tar 192.168 10.55 镜像 Docker docker


1.容器文件系统打包
将容器的文件系统打包成tar文件,也就是把正在运行的容器直接导出为tar包的镜像文件.

export(导出—>文件与文件系统)

docker export -o mybox123.tar 88d6209f1d08
scp mybox123.tar root@192.168.10.55:/opt

导入镜像归档文件到其他宿主机
import(导入)

docker import /opt/mybox123.tar  erfa:v1

docker image ls
REPOSITORY                  TAG              IMAGE ID       CREATED          SIZE
erfa                        v1               3d7838c617db   16 seconds ago   1.24MB

注意:
如果导入镜像时没有起名字,随后可以单独起名字(没有名字和tag),可以手动加tag

docker tag 3d7838c617db xxx:v1

docker tag erfa:v1 hhh:v1

2.通过容器创建本地镜像
背景:
容器运行起来后,又在里面做了一些操作,并且要把结果保存到镜像里
方案:
使用docker commit指令,把一个正在运行的容器,直接提交为一个镜像,commit是提交的意思.

docker attach mybox123
touch 555.txx
docker commit 88d6209f1d08(容器id) erfa:v2

docker run -it --name=aaa 688fb919d0cb /bin/sh

docker attach aaa
/ # 
/ # 
/ # ls
123.txt  555.txt  a.sh     bin      dev      etc      home     proc     root     sys      tmp      
docker commit -m "my images version" -a "erfa" 88d6209f1d08 hfr:v1
-m "添加注释"
-a 作者
-p 提交时暂停容器运行

init层的存在,是为了避免执行docker commit时,把Docker对自己/etc/hosts等文件的修改,也一起提交掉.

docker attach mybox123

/ # cat /etc/hosts
127.0.0.1	localhost
::1	localhost ip6-localhost ip6-loopback
fe00::0	ip6-localnet
ff00::0	ip6-mcastprefix
ff02::1	ip6-allnodes
ff02::2	ip6-allrouters
172.19.0.2	88d6209f1d08 ****

3.镜像迁移(–>镜像)

save(导出)

docker save -o redis123.tar redis

scp redis123.tar root@192.168.10.55:/opt/

The authenticity of host '192.168.10.55 (192.168.10.55)' can't be established.
ECDSA key fingerprint is SHA256:q+5D+Hh4M42GRWxjpk8Y9bBy4fLkrI8tynwq4QxCG7A.
ECDSA key fingerprint is MD5:a0:4b:84:4a:4a:1b:3b:82:18:22:b3:0e:ff:e2:c1:1d.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.10.55' (ECDSA) to the list of known hosts.
root@192.168.10.55's password: 
redis123.tar                                                                                                                                            100%  111MB  22.2MB/s 

load(导入)

docker load < /opt/redis123.tar 

docker image ls
REPOSITORY    TAG       IMAGE ID       CREATED       SIZE
redis         latest    7faaec683238   3 weeks ago   113MB

注意:
1.tar文件的名称和报错的镜像名称没有关系
2.导入的镜像如果没有名称,自己打tag起名字

标签:容器,tar,192.168,10.55,镜像,Docker,docker
来源: https://blog.csdn.net/weixin_51788903/article/details/121159594

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有