加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

数据库-docker-compose服务的集中配置

发布时间:2020-12-16 03:23:22 所属栏目:安全 来源:网络整理
导读:想象一下一个不平凡的docker compose应用程序,其中nginx位于Web应用程序的前面,并且有几个链接的数据存储区: web: build: my-django-app volumes: - .:/code ports: - "8000:8000" links: - redis - mysql - mongodbnginx: image: nginx links: - webredis:

想象一下一个不平凡的docker compose应用程序,其中nginx位于Web应用程序的前面,并且有几个链接的数据存储区:

web:
  build: my-django-app
  volumes:
    - .:/code
  ports:
    - "8000:8000"
  links:
    - redis
    - mysql
    - mongodb
nginx:
  image: nginx
  links:
    - web
redis:
  image: redis
  expose:
    - "6379"
mysql:
  image: mysql
  volumes:
    - /var/lib/mysql
  environment:
    - MYSQL_ALLOW_EMPTY_PASSWORD=yes
    - MYSQL_DATABASE=myproject
mongodb:
  image: mongo

数据库非常容易配置(目前),容器公开了很好的环境变量来控制它们(请参见mysql容器),但是nginx是什么?我们需要为此模板一个虚拟主机文件,对吗?

我不想投射自己的映像,这需要针对每个更改的配置(从不同开发人员的设置)进行重新构建,以进行测试,以及进行分阶段和生产.如果我们想通过轻巧的方式通过配置选项进行A / B测试,该怎么办?

这里需要一些集中化的配置管理,也许是由docker-compose控制的可以将配置文件写到共享卷的东西?

随着添加新服务,这将变得更加重要(想象一个微服务云,而不是像本例中那样的整体Web应用程序)

在docker-compose项目中管理配置的正确方法是什么?

最佳答案
通常,您会发现大多数容器都使用入口点脚本通过使用环境变量填充配置文件来配置应用程序.有关此方法的高级示例,请参见0001 for WordPress official image.

因为这是一种常见的模式,所以Jason Wilder创建了dockerize项目来帮助自动化该过程.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读