Docker Compose:在运行中初始化/自定义集线器中的图像。跑

时间:2015-04-16 22:18:55

标签: image docker initialization customization docker-compose

我是docker compose的新手,在开始撰写之前无法弄清楚如何从私人/公共docker hub自定义我的图像。

最终目的是在集线器上安装标准映像,这些映像通过在本地存储的一个配置文件(包含密码,IP,私人信息)进行组合和自定义来调用。

更详细地说,我得到了一个DB postgres,以及一个链接到它的后端(django app)。

  • 在拉动图像(Postgres:lastest)之后,数据库需要很少的自定义(创建数据库,给予烫发)。
  • 在应用程序运行之前,后端需要在该容器内添加一个配置文件。

如果我一步一步地获取图像,将每个图像作为容器运行并添加自定义,一切正常。最后,最后一次运行容器DB和后端链接。

使用compose,因为整个事情都运行了一次,我似乎无法在容器运行之前正确定制后端(复制一个文件)并链接到数据库。我可以在docker编写后运行自定义,但似乎为时已晚。

任何人都可以给我一个提示如何使它工作?或者这个过程的最佳方法是什么。

感谢您的宝贵帮助。 非常好的晚上!

此致 格雷格。

1 个答案:

答案 0 :(得分:1)

  

后端需要在应用程序运行之前将配置文件添加到该容器内的库中。

为什么不使用VOLUME将该文件挂载到容器中。 Docker撰写支持volumes:作为标准语法。

或者,您可以通过Dockerfile使用该文件在本地构建该映像,并将该映像推送到集线器。然后,您可以直接使用图像,就像使用标准图像一样。