docker打包,针对的是镜像,而不是运行中的容器。
查看当前系统的镜像文件:
docker images
首先,将当前运行中的,已经自定义修改之后的容器保存为新的镜像。
docker commit ce11ed87f21f web_servers:2.0
例如镜像名叫:web_servers
执行打包命令:将镜像web_servers 通过save打包命令,以为.tar格式保存在路径/home下。
docker save web_servers:2.0 -o /home/web_servers.tar
打包命令执行完成之后,如果打包的镜像文件占用空间比较大,可以用操作系统的tar -zcvf打包压缩命令,将该镜像包再进行一次压缩。
OK,致此,容器打包完成。
***************
这样就可以将该打包的容器,传输到其他服务器,直接运行启动。
例如,将该镜像文件传输到另一台服务器上,前提是目标服务器上已安装docker环境;
docker load < db.tar docker load < web_servers.tar
用docker images 命令查看镜像是否导入成功。
首先启动运行数据库容器:
docker run -d -p 5432:5432 -e POSTGRES_USER=odoo -e POSTGRES_PASSWORD=实际密码****** -e POSTGRES_DB=alsv --name alsv_db db:10.6
启动运行web_servers.tar应用容器:(注意端口映射,如果需要共享操作系统本地路径,注意容器卷映射)
方式一:
共享系统存储路径:docker run -it -d --name web_servers -p 8088:8088 web_servers:2.0
方式二:
指定存储路径:(将系统的/home/test/映射到容器内部的/mnt/ )
docker run -it --name web_servers -v /home/test/:/mnt/ -p 8088:8088 web_servers:2.0 /bin/bash
没有异常的话,查看运行状态:
docker ps