Gerenciando vários sites com o Docker-compose

1

Em SO, havia uma boa resposta link , mas funciona somente quando você tem estrutura como

└───project
    │   docker-compose.yml
    │
    ├───reverseproxy
    │       Dockerfile
    │       nginx.conf
    │
    ├───website1.com
    │       Dockerfile
    │
    └───website2
            Dockerfile

(claro que há algumas outras coisas, exceto mencionadas, mas são as mais importantes)

Mas eu acho que normalmente a estrutura é diferente (pelo menos faz sentido para mim e eu uso atualmente):

└───projects
    ├───website1.com
    │       docker-compose.yml
    │       Dockerfile
    │
    ├───website2
    │       docker-compose.yml
    │       Dockerfile
    │
    └───website3
            docker-compose.yml
            Dockerfile

Cada uma das pastas "website" é um repositório git separado. Cada site pode ser clonado e executado localmente. Portanto, para o desenvolvimento do website1.com, você não precisa clonar todos os outros 100 sites hospedados no mesmo servidor.

E aqui está a pergunta - ter essa estrutura (que é boa para testes locais \ desenvolvimento) como eu "combina" / "mescla" todos os sites no servidor de produção? Parece que a herança seria mais adequada aqui, mas há relatos problema para compor o docker, o que o torna quase inútil, sem soluções feias ...

O que eu quero alcançar é:

  1. Mantenha a possibilidade de clonar um site e executá-lo localmente \ para desenvolvimento
  2. Possibilidade de executar todos os sites em "um clique" em produção
  3. Possibilidade de executar algo em um contêiner "compartilhado" (como nginx reversproxy para roteamento e tratamento de HTTPS; também pode ser um servidor SMTP em contêiner para enviar e-mails) em produção
por The Godfather 18.08.2018 / 20:18

0 respostas