我已经在公司服务器生产环境用上了 docker 。主要是每次升级服务器,会根据服务器的各个服务去手动 build image , push 到私有的 docker registry 。在实际部署的时候从私有 registry pull images ,然后利用 docker-compose 去管理。
这些都是手动执行的,这样做也只是我看了 docker 文档后自己想出来的部署方案。但是仍然感觉略显繁琐。
不知道自己这样做对不对。大家在生产环境中是怎么利用 docker 去实现 "Build国外服务器, Ship, and Run Any App, Anywhere" 的?
配合 CI 工具比如 jenkins 、 GoCD 之类的做自动化
我一般(娱乐用途)是能用官方 Image 就用官方,大部分官方镜像都有良好的参数自定义配置,以及具体的配置文件挂载路径说明,而且往往精简得很好。
当然我自己也 build 过镜像…至于方式当然是从一个适合的基础镜像开始了 bash 进容器,配置,提交。很少写复杂的 Dockerfile 。
至于工具,你想要的在这里:
http://os.51cto.com/art/201411/456204.htm
其实我觉得 docker 不使用任何工具也很方便,除了网络巨坑。
至于部署… docker 只是运行环境 为什么要用它做部署。。。
例如跑 tomcat 的容器,不应该让容器构建出一个 war ,而是从 CI 工具里面构建出一个 war 再发布到容器直接供容器运行。
生产上已经在跑 kube 了……
你说的 kube 是啥。。是那个 CSS 框架吗?
我们的代码和容器是一体的,一个容器是一个服务,整个服务器由多个容器组成,而且可能会同时运行在不同的主机上,所以可能跟你的不太一样
kubernetes