要将Docker容器从一台机器迁移到另一台机器,可以按照以下步骤操作:
在机器A上提交容器为镜像:
使用docker commit命令将运行中的容器保存为新的镜像。这里需要容器的ID或名称,以及你想要命名的目标镜像名。
docker commit [容器ID或名称] [目标镜像名]:[标签]#例如:docker commit my_container my_new_image:latest
在机器A上保存镜像为tar文件:
使用docker save命令将刚才创建的镜像保存为tar文件。
docker save -o [文件名.tar] [目标镜像名]:[标签]#例如:docker save -o my_new_image.tar my_new_image:latest
将tar文件从机器A传输到机器B:
你可以使用scp或其他文件传输方法将tar文件从机器A传输到机器B。
scp my_new_image.tar [用户]@[机器B的IP地址]:[路径]#例如:scp my_new_image.tar user@192.168.1.2:/home/user/
在机器B上加载镜像:
使用docker load命令在机器B上加载tar文件作为镜像。
docker load -i [文件名.tar]#例如docker load -i my_new_image.tar
在机器B上运行新镜像:
现在可以在机器B上使用docker run命令来运行你的镜像。
docker run -d [其他选项] my_new_image:latest
请确保在执行这些步骤时,两台机器上都安装了Docker,并且用户有足够的权限来执行Docker命令。如果你在传输文件时遇到权限问题,可能需要使用管理员权限或调整文件权限。此外,根据你的网络配置,你可能需要在scp命令中指定端口号(使用-P选项)。