43人参与 • 2024-07-28 • Java
场景 | 简要步骤 | 关键命令 | 备注 | |
1 | 迁移镜像 | 1. 原镜像打包为本地文件 2. 新环境导入为镜像 | docker save [镜像名称:tag] -o [tar包] docker load -i [tar包] | 以镜像层的形式保存为tar包 |
2 | 迁移容器a | 1. 保存容器至镜像 2. 保存镜像至本地文件 3. 导入为镜像 4. 从镜像生成容器 | docker commit [容器id] [镜像名称:tag] docker save [镜像名称:tag] -o [tar包] docker load -i [tar包] docker run | |
3 | 迁移容器b | 1. 保存容器至本地文件 2. 导入为镜像 3. 从镜像生成容器 | docker export [容器名称/id] -o [tar包] docker import [tar包] [镜像名称:tag] docker run | 以文件的形式保存为tar包 |
4 | 从系统打包镜像 | 1. 原系统打包为本地文件 2. 导入为镜像 | 打包系统文件 tar *** docker import [tar包] [镜像名称:tag] |
原镜像打包为本地文件:
# docker save 711d6d1f32b3-o kylinv10sp2.tar
新环境加载:
# docker load -ikylinv10sp2.tar
# docker tag 711d6d1f32b3kylin:v10sp2
1. 容器打包为镜像(需暂停容器)
# docker commit 76471edf03ac kylin-migraphxtest:01
2. 镜像打包为本地文件
#docker save kylin-migraphxtest:01 -okylin-migraphxtest.tar
3. 新环境导入
# docker load -i kylin-migraphxtest.tar
# docker exportf42fbfc75aff -o kylin-migraphxtest.tar
# docker importkylin-migraphxtest.tar kylin:export
该镜像相比save后加载的镜像小1g左右
以麒麟系统为例:
1. 创建目录
#mkdir /kylin-docker-fs
#cd /kylin-docker-fs
2. 创建基础目录
#mkdir usr dev
#cp -a /usr/lib /usr/lib64/usr/bin /usr/share usr/
3. 创建链接
#ln -s usr/lib lib
#ln -s usr/lib64 lib64
#ln -s usr/bin bin
4. 复制配置及root目录
#cp -a /etc /root ./
5. 裁剪
#rm -rfetc/profile.d/flatpak.sh etc/profile.d/gawk.csh etc/profile.d/gawk.shetc/profile.d/lang.csh etc/profile.d/lang.sh etc/profile.d/system-info.sh
6. 测试镜像目录
#chroot .
7. 打包
#cd ..
#tar -c kylin-docker-fs/ -z-c . -f kylin-hg-docker.tar.gz
法一(推荐):
# docker import kylin-hg-docker.tar.gzkylin:ori
或# catkylinv10sp2.tar | docker import - kylin:ori
法二:
# docker import kylinv10sp2.tar
# docker tag a8c01ec994a6kylin:ori
您想发表意见!!点此发布评论
版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。
发表评论