我正在玩一个MEAN javascript项目.
(mongoDB angular sails.js node.js)
由于我很多时候处于离线状态,所以我想使用boot2docker在OS X笔记本电脑上保存我的开发环境,在docker容器中运行.
“生产”(不是实际生产,只是我部署到朋友展示的地方)是一个运行Ubuntu作为主机的数字海洋液滴,希望是同一个docker容器.
我希望环境不会经常变化,并且我可以继续使用git push / pull来推动代码更改.
除了上面描述的内容,我还需要其他任何东西吗?
我是否需要Vagrant,例如部署该docker容器或者那是一种矫枉过正?
docker能指定我所有的所有需求,即node.js,sails等的正确版本吗?
是否有一个现成的容器我可以重复使用或修改而不是从头开始?
除了上面描述的内容,我还需要其他任何东西吗?
你所描述的听起来很合理.但请记住,您不希望使用一个docker容器,而是每个服务使用一个容器.这意味着:一个容器运行mongo,一个容器运行节点,依此类推.这是Docker的最佳实践.
我是否需要Vagrant,例如部署该docker容器或者那是一种矫枉过正?
听起来你的相当简单的设置不需要Vagrant.您可以使用Dockerfiles来构建包含您需要安装的所有内容的图像.见Dockerfile Reference和Dockerfile best Practices.
docker能指定我的所有需求,sails等的正确版本吗?
是的,每个Docker镜像都有一个将在容器内运行的特定服务版本.这是使用容器的要点之一.
是否有一个现成的容器我可以重复使用或修改而不是从头开始?
是的,在Docker Hub上可以找到许多现成的容器.在编写Dockerfiles时,请使用这些图像作为基础,以便在Docker Hub上的映像中安装任何其他内容.