背景:我正在使用Docker来构建我的开发环境(web-app、nginx、gunicorn、postgress等等)。我希望我的开发环境与生产环境相匹配。我现在使用debian 7作为基本发行版,但问题与Debian无关。我不希望在实际生产(安全更新,监控,日志记录很少,但这是不同的问题,为什么不),但我想使用‘真正的’Debian 7作为生产环境。
问题:是否有方法以本地命令的形式运行构建停靠者映像的命令(如:docker deploy_to_host <Dockerfile>将以根命令的形式运行RUN指令等)。这与我打开主机根命令并手动复制粘贴命令的效果类似。
谢谢!
发布于 2014-10-29 09:11:57
在我看来,您使用了一套错误的工具,所以我的回答不是关于Docker的,这就是为什么:
如果您要在没有Docker的生产环境上进行部署,并且希望有某种自动过程来准备机器并部署应用程序,那么您需要的工具如下:
一旦决定了如何部署到生产中,就可以查看开发环境的选项。
由于您在生产中没有使用Docker,所以在您的开发环境中使用它很少有兴趣。然后,我将考虑使用流浪汉来定义一个(或多个)虚拟机,并让Vagrant使用您为生产env选择的工具准备这些VM。(厨师、木偶、SaltStack、Ansible或shell脚本)。见流浪供给。
这将具有测试您的部署解决方案以及在开发环境中测试您的应用程序的优点,并增强人们对所有这些在部署到prod时都能正常工作的信心。
发布于 2014-10-29 10:13:20
您可以使用涵盖这里的远程docker,请参阅2.3 Misc一节和命令POST /build。简单地说,您可以将包含Dockerfile及其根的tar文件发布到停靠守护进程,以便在远程机器上构建它。
UPD:答案不是我注意力不集中的实际原因。
https://stackoverflow.com/questions/26625233
复制相似问题