docker将容器打包成镜像并传输至其他服务器部署(可用于容器重新run)
参考文档地址:
https://www.cnblogs.com/007sx/p/12919027.html
https://blog.csdn.net/Magic_ww/article/details/109957836
一、从容器创建一个镜像
使用到的命令:docker commit
注:容器查看docker ps -a

docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
- OPTIONS说明:
-a :提交的镜像作者;
-c :使用Dockerfile指令来创建镜像;
-m :提交时的说明文字;
-p :在commit时,将容器暂停。
- CONTAINER:容器ID
- REPOSITORY:定义镜像名称
- TAG:标签
例:docker commit -m "voip1.0optimize" -a "" 69d7075117e1 optimeze:voip1.0

二、打包一个镜像
docker save [OPTIONS] IMAGE [IMAGE...]
docker save -o my_ubuntu_v3.tar runoob/ubuntu:v3
例:
docker save -o voip1.0optimeze.tar 551b6a8fb4e2 #后面load这个包会出现None的情况
docker save -o voip1.0optimeze.tar 镜像名:tag #这样后面load就不会出现None的情况

三、镜像远程拷贝
使用scp传输至其他服务器:
从本地复制到远程:
scp local_file remote_username@remote_ip:remote_folder
或者
scp local_file remote_username@remote_ip:remote_file
或者
scp local_file remote_ip:remote_folder
或者
scp local_file remote_ip:remote_file
从远程复制到本地
scp root@www.runoob.com:/home/root/others/music /home/space/music/1.mp3
scp -r www.runoob.com:/home/root/others/ /home/space/music/
四、新服务器载入镜像
docker load [OPTIONS]
- OPTIONS 说明:
--input , -i : 指定导入的文件,代替 STDIN
--quiet , -q : 精简输出信息。
例:
docker load --input voip1.0optimeze.tar

五、镜像重命名
docker tag [镜像id] [新镜像名称]:[新镜像标签]
例:docker tag 551b6a8fb4e2 voip1.0:optimzes
六、使用本地镜像

注:PEPOSITORY:TAG

浙公网安备 33010602011771号