最好是先将自己的容器暂停一下,以免数据丢失
docker ps -a
找到自己的容器id,然后执行命令关闭容器docker stop 容器id
docker ps #运行结果 CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 693d9fb41d27 redis "docker-entrypoint.s…" 42 minutes ago Up 42 minutes 0.0.0.0:6389->6379/tcp, :::6389->6379/tcp redis
提交你的变更,并且把容器保存成镜像,命名为redis
docker commit 693d9fb41d27 redis #然后查看自己的镜像,就可以发现自己的容器已经转成镜像了 docker images
#后面的是保存的目录文件 docker save redis > /app/redis.tar
#scp 目录/文件名.文件格式 目标服务器用户名@ip地址:目标服务器目录 scp /home/test.zip aitest@10.22.137.11:/hoem/ scp -r /home/test/data aitest@10.22.137.11:/home/
注:可以通过此命令将前面的镜像文件转移到目标服务器
docker load < /app/redis.tar
启动命令:
docker run -p 16379:6379 --name redis -v /data/redis/redis.conf:/etc/redis/redis.conf -v /data/redis/data:/data -d redis:5.0 redis-server /etc/redis/redis.conf --appendonly yes --requirepass "你的密码"
docker exec -it 容器ID /bin/bash 启动打包的容器
参考链接:
https://www.jianshu.com/p/259f44f0e266
https://blog.csdn.net/sunmingyang1987/article/details/104555839