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
相关推荐
JavaPub-rodert11 分钟前
使用 Docker 部署 Ollama:Docker Compose 一键运行 DeepSeek-R1 1.5B
运维·docker·容器
FoldWinCard1 小时前
K8s集群部署的方法原理
大数据·容器·kubernetes
二宝哥4 小时前
docker安装apisix
docker·容器·apisix
Kina_C5 小时前
从零搭建Kubernetes集群:Harbor私有仓库 + K8s v1.35 + Flannel网络插件完整部署指南
网络·容器·kubernetes
王da魔5 小时前
部署Kubernetes
云原生·容器·kubernetes
池以遇7 小时前
云原生高级——kubernetes的部署
云原生·容器·kubernetes
ylj_dev7 小时前
从 0 构建 AI Workload Platform(四):从单机工作流内核到可靠控制面
docker·postgresql·架构·golang
智码看视界7 小时前
Day57-K8s核心概念速通:Pod、Deployment、Service与Ingress
云原生·容器·kubernetes·k8s·ingress·java后端·deployment
Stewie121389 小时前
K8s集群部署
云原生·容器·kubernetes
.柒宇.9 小时前
使用 cri-docker 搭建 Kubernetes 集群完整教程(v1.36.3)
docker·容器·kubernetes·k8s集群安装