代码之家  ›  专栏  ›  技术社区  ›  BayerSe

docker compose文件太长[已关闭]

  •  3
  • BayerSe  · 技术社区  · 6 年前

    我最近开始将我的自托管服务迁移到 docker docker-compose

    有了20多个容器和近500行代码,可维护性现在有所下降。

    有没有好的选择来保持一个巨大的 码头工人

    2 回复  |  直到 6 年前
        1
  •  4
  •   bluescores    6 年前

    那是个大码头工人!将它分解为多个docker compose文件。

    你可以通过 multiple docker-compose files 合二为一 docker-compose 命令。如果许多不同的容器在逻辑上是分开的,那么使它们更容易使用的一种方法就是分开容器 docker-compose.yml 通过容器分组、逻辑用例,或者如果您真的想这样做,您可以为每个服务编写一个docker文件(但是您有20个文件)。

    然后可以使用bash别名或助手脚本来运行 码头工人 .

    # as an alias
    alias foo='docker-compose -f docker-compose.yml -f docker-compose-serviceA.yml -f docker-compose-serviceB-yml $@'
    

    然后:

    # simple docker-compose up with all docker-compose files
    $ foo -d up
    

    #!/bin/bash
    
    docker-compose -f docker-compose.yml \
      -f docker-compose-serviceA.yml \
      -f docker-compose-serviceB.yml \
      -f docker-compose-serviceC.yml \
      $@
    

    注:顺序为 -f <file> 旗帜 重要的是,如果你不重写任何服务,它可能不会咬你。无论如何都要记住。

        2
  •  0
  •   KeepCalmAndCarryOn    6 年前