首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Docker中使用动态生成的Nginx配置文件?

如何在Docker中使用动态生成的Nginx配置文件?
EN

Stack Overflow用户
提问于 2017-12-25 18:07:49
回答 2查看 769关注 0票数 2

我正在使用Nginx和ExpressJS (NodeJS)开发一个应用程序,我正在使用Docker (与docker-compose一起)。

我没有在考虑到Docker的情况下编写应用程序。

我的应用程序动态地创建Nginx配置。最初,这些Nginx配置放在我的应用程序中的一个标准目录中。我已经将Nginx配置为从这个目录读取所有*.conf文件,一切都很好。

现在我使用的是Docker,我使用两个不同的容器:一个用于Nginx,另一个用于我的应用程序。

问题:如何将生成的配置文件从一个容器移动到另一个容器?

是否有更好的方法来实现这一点?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-12-25 18:15:58

您可以运行安装相同卷的两个容器。

见"码头容积“。

第一个容器将生成该卷中的配置文件。

第二个容器(NGiNX)将读取它们。

卷配置参考为例

代码语言:javascript
复制
version: "3"

services:
  db:
    image: db
    volumes:
      - data-volume:/var/lib/db
  backup:
    image: backup-service
    volumes:
      - data-volume:/var/lib/backup/data

volumes:
  data-volume:

在这里,相同的卷被安装了两次。

票数 2
EN

Stack Overflow用户

发布于 2017-12-25 18:33:00

所有强硬的VonC解决方案都会工作,这可能会使您的部署过程复杂化,因为两个容器都需要在同一台服务器上并共享一个持久卷,这可能会使状态管理和启动复杂化,除非您在生产中也使用了对接器组合,否则您还需要为这些服务找到彼此的服务发现,如果您只是试图对单个服务进行原型,则可能不需要这些服务。

您可以选择使用supervisord在同一个容器中运行nginx与您的快递应用程序一起运行。

下面是来自码头文档的关于如何做到这一点的参考:集装箱/

我认为,如果nginx充当快速应用程序的辅助角色,并且这两个服务都可以被认为是同一个微服务的一部分,这对于您的用例来说是有意义的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47970977

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档