docker镜像的迁移
作者:
Supper2002
,
2022-08-19 11:49:34
,
所有人可见
,
阅读 244
关闭容器内的任务 关闭容器内的任务 关闭容器内的任务(及tmux)
重要的事情说三遍
容器变为镜像:
接着返回ACTerminal,然后进入到你的云服务器(即上级环境,直接使用的那一层)
将容器保存成镜像
docker ps
docker commit 容器名 镜像名
docker images
关闭容器(如果是为了迁移到其他服务器,可忽略此步)
docker stop 容器名字
删除容器(如果是为了迁移到其他服务器,可忽略此步)
docker rm 容器名字
迁移镜像
将镜像打包成一个文件(文件格式为.tar)
docker save -o 文件名(随便起).tar 镜像名字
可以先弄到ACTerminal上
退出旧服务器,进入到ACTerminal
scp 服务器名字(你的旧云服务器):文件名.tar .
上传至新服务器
scp 文件名.tar 新服务器:
生成镜像与服务器
加载镜像
docker load -i 文件名.tar
使镜像重新创建容器(端口看项目所需)
docker run -p 20000:22 -p 8000:8000 -p 80:80 -p 443:443 --name 新容器名字 -itd 镜像名
第二次看的时候才发现,你这里缺了容器变为镜像的步骤,哈哈
没缺啊
关闭容器内的任务,指的是服务吗,nginx和redis以及ssh这些服务需要关闭吗,这些应该怎么关闭,用类似service nginx stop命令吗
1.指的是服务,你所打开的一切都要关闭,比如Django项目中的服务器的启动等,以及你打开的tmux。即把它变成容器初始时的样子,里边的一切服务都要关闭。不然关闭容器的时候会提示你无法关闭。2.如何关闭:用一些关闭的命令,或者直接ctrl + c关闭(比如Django服务器启动后,ctrl c 即可关闭).又或者找到启动的进程,用命令 kill 把进程杀死(kill具体的使用可以百度搜,我这里忘了^_^,好像是kill + 9 + 进程的序列号)