使用Docker容器持续开发

时间:2017-03-08 09:15:53

标签: node.js docker docker-compose

我正在使用docker创建一个用于学习目的的新项目。我认为这会让事情变得更容易,因为我只需要设置一次环境。

我已经创建了这样的设置;我创建了一个安装Ubuntu和NodeJS的基础映像。我还创建了一个将src(Web应用程序)文件夹复制到容器中的开发映像,然后执行npm install并运行server.js。简而言之,基本上就是这样。

但是现在,每当我对源代码进行更改时,我都必须停止正在运行的容器,并构建映像并再次运行它。重建和运行de Development图像不需要很长时间,但是在开发过程中我做了一些更改我的代码有点烦人。

我通常使用的是Gulp任务或浏览器查看我的本地文件。每次我做出更改时,这些更改都会在浏览器中自动显示。这确实加快了开发过程。

通过在本地安装所有内容,我仍然可以在开发过程中像这样工作。但这有点打败了拥有“发展形象”的目的。这意味着我仍然需要使用适当的节点版本,数据库方案,端口映射,SSL设置,证书等配置所有想要在此Web应用程序上工作的系统。

所以我的问题是,有没有办法运行容器,每当我更改源代码(本地)时,它会自动推送到正在运行的容器?所以我有“持续发展”?

1 个答案:

答案 0 :(得分:1)

如果我理解正确,那么每次更新src时都不希望构建开发图像。如果是这种情况,你可以做的是:

对于开发阶段(当源代码经常更新时):

  1. 以使用共享卷(源代码所在的位置)的方式创建Dockerfile。
  2. 在共享卷中,您可以使用src容器更新源代码。
  3. 此外,如果您需要执行其他任务,可以在脚本中编写它,并在每次更新源代码时调用该脚本。
  4. 稍后,当开发阶段结束时,您可以使用当前的Dockerfile来构建开发映像。