Docker 在 CentOS 上的容器迁移指南
一、迁移方式总览与选择
二、标准流程 镜像导出导入(推荐)
docker ps -adocker imagesdocker commit <容器ID或名> <镜像名>:<标签>docker save -o <镜像名>.tar <镜像名>:<标签>scp <镜像名>.tar <目标主机>:/tmp/docker load -i /tmp/<镜像名>.tardocker run -d --name <新容器名> -p <主机端口>:<容器端口> -v <卷名或宿主机路径>:<容器内路径> <镜像名>:<标签>三、容器导出导入与数据卷迁移(export/import)
docker stop <容器名>docker export <容器名> | gzip > <容器名>.tar.gzzcat <容器名>.tar.gz | docker import - <镜像名>:<标签>docker run -d --name <新容器名> <镜像名>:<标签>docker run --rm -v my_volume:/data -v $(pwd):/backup ubuntu tar cvf /backup/backup.tar /datadocker volume create my_volumedocker run --rm -v my_volume:/data -v $(pwd):/backup ubuntu tar xvf /backup/backup.tar -C /data四、批量迁移与编排迁移
version: '3.8'
services:
web:
image: myapp:latest
ports:
- "80:80"
volumes:
- my_volume:/data
volumes:
my_volume:
docker save/load 预加载)docker-compose up -d五、注意事项与常见问题
-p 映射;如使用自定义网络,需在目标主机重建同名网络。docker ps、docker logs、业务自检,确认服务可用与数据完整。