docker 容器打包备份与镜像迭代更新

javascript 复制代码
# 导出命令
docker export <容器id> > <包名>.tar

# 导入命令
cat <包名>.tar | docker import - <镜像名:版本号>
javascript 复制代码
# 进入容器内部
docker exec -it <容器ID> /bin/bash

# 使用对应系统的安装包管理工具下载需要增强的功能包 (略)

# 增强docker基础镜像功能
docker commit -m="提交说明" -a="公司/作者" <容器ID> <镜像名称:版本号>

# 上传镜像仓库 (简化/略)
docker login 。。。。
docker tag 。。。。。
docker push  。。。。

补充:镜像拷贝打包

第一步:在外网机器上保存镜像

javascript 复制代码
# 1. 拉取官方镜像
docker pull nginx:alpine

# 2. 用 docker save 保存为 tar 文件(保留所有元数据)
docker save nginx:alpine > nginx-alpine.tar

# (可选)压缩以节省传输体积
gzip nginx-alpine.tar   # 生成 nginx-alpine.tar.gz

提示:可批量保存多个镜像:

docker save nginx:alpine redis:7 postgres:16 > base-images.tar

第二步:将 tar 文件传入内网

如U盘

第三步:在内网机器加载并推送到 Harbor
javascript 复制代码
# 1. 解压(如果之前压缩了)
gunzip /data/images/nginx-alpine.tar.gz   # 如果没压缩,跳过此步

# 2. 加载镜像到本地 Docker
docker load < /data/images/nginx-alpine.tar

# 验证是否加载成功(应看到 REPOSITORY = nginx, TAG = alpine)
docker images | grep nginx

# 3. 给镜像打标签,指向你的内网 Harbor (克隆并改名)
docker tag nginx:alpine harbor.internal:8080/library/nginx:alpine

# 4. 登录 Harbor(首次需配置证书或 insecure-registries)
docker login harbor.internal:8080 -u admin -p 'your_password'

# 5. 推送镜像到内网仓库
docker push harbor.internal:8080/library/nginx:alpine
相关推荐
工业一体机老司机1 小时前
Docker部署工控机采集服务 Compose编排与开机自启
运维·docker·容器
miaobinfei7 小时前
docker拉取dify镜像,执行docker compose up -d 报错
运维·docker·容器
kobe_OKOK_8 小时前
docker compose命名卷 映射到宿主机的路径
运维·docker·容器
晨陌y13 小时前
Flare自托管导航页教程:Docker部署、多用户、API与公网访问
运维·docker·容器
梅孔立15 小时前
Docker 容器网络不通:Tomcat 无法解析 MySQL、Nginx 无法反代 Tomcat 的生产级排查与治理
网络·docker·tomcat
螺蛳粉 螺蛳粉1 天前
第 05 篇:etcd 深入:Raft 共识、watch 机制与快照备份恢复实战(底座认知 05)
docker·云原生·容器·kubernetes·etcd·分布式存储·kube-apiserver
PellyKoo1 天前
【docker】cifs卷改smb密码后容器起不来的解决方法
运维·docker·容器
时早玖沐1 天前
放弃 QQ 官方机器人:用 SnowLuma + AstrBot 自建 QQ 机器人
docker·开源·agent
阿标在干嘛1 天前
容器编排的“场景适配”:我们为什么在部分服务中回归了Docker Compose?
运维·docker·容器
IT19951 天前
Docker 快速部署 DM8 达梦数据库|完整踩坑笔记
笔记·docker·容器