Web Server com Docker

19 views
Skip to first unread message

Rodrigo Fioravante

unread,
Feb 6, 2017, 8:00:58 AM2/6/17
to infr...@googlegroups.com
Bom dia,

Gostaria de saber se alguém já aí utiliza o Docker e passou por tal situação.

Possuo vários sites e gostaria de utilizar cada qual com seus containers (docker), ambientes completamente isolados, em um mesmo server. No qual tenho alguns apontamentos de domínios diferentes em um único servidor.

Tenho utilizado a ferramenta docker-compose, e cheguei a ver alguns sites que falam sobre a solução de utilizar um proxy pra resolver este problema. Alguém tem alguma ideia de como resolver isso de outra forma, talvez apenas com configurações nos arquivos de configuração do apache?

O problema é por serem em containers diferentes, já que atualmente eu utilizo um web server com apache e os vários domínios funcionam perfeitamente. Desde já agradeço a ajuda e atenção de vocês.

Atenciosamente,
Rodrigo Ferreira Gonçalves Fioravante
Tecnólogo em Sistemas para Internet - IFMS

Juvenal Muniz

unread,
Feb 6, 2017, 9:10:54 AM2/6/17
to infr...@googlegroups.com
Beleza, Rodrigo?!

Cara, acho que o você poderá resolver isso usando o nginx-proxy.

Ele é basicamente um container docker com um servidor nginx que também roda o docker-gen.

Depois de instalado e configurado ele irá "monitorar" o socket do Docker, ou seja, vai escutar todos os eventos
gerados pelo docker. Aí você só precisará configurar cada container com as suas aplicações web para que o 
docker-gen possa gerar automaticamente o arquivo de configuração do nginx, fazendo com que ele faça o papel
de um proxy reverso, mas pegando as configurações automaticamente dos containers.

Já que você usa o docker-compose, vai um exemplo para um container com wordpress:

wordpress:
  image: wordpress
  links:
    - db:mysql
  expose:
    - 80
  environment:
    - "VIRTUAL_HOST=blog.rodrigo.com.br"
db:
  image: mariadb
  environment:
    MYSQL_ROOT_PASSWORD: senha1234

No exemplo acima o docker irá rodar o wordpress e um banco de dados mariadb. A linha VIRTUAL_HOST=blog.rodrigo.com.br
vai dizer ao docker-gen qual domínio associar a esse servidor (que estará escutando na porta :80).

Instalando e configurando o nginx-proxy e ajustando seus containers como no exemplo acima, vai ser tudo automático.
Quando você ligar um container, o nginx vai ser atualizado com as informações necessárias para o proxy reverso. Isso vai 
acontecer com todos os containers que você ligar.

A configuração do nginx-proxy é bem de boa, exemplo (docker-compose):

nginx-proxy:
  image: jwilder/nginx-proxy
  ports:
    - "80:80"
  volumes:
    - /var/run/docker.sock:/tmp/docker.sock

 Pronto. 

Mas com isso você teria que usar o nginx como ponto de entrada de todos os seus sites, pois ele trabalhará como um proxy
reverso.

Era isso que você estava querendo?

Falou, Rodrigo!

Att,

--
Você recebeu essa mensagem porque está inscrito no grupo "Infraestrutura de TI do MS" dos Grupos do Google.
Para postar nesse grupo, envie um e-mail para infr...@googlegroups.com.
Acesse esse grupo em https://groups.google.com/group/infratims.



--
Juvenal Muniz
juvena...@gmail.com

Pfeifer

unread,
Feb 7, 2017, 12:55:55 PM2/7/17
to Infraestrutura de TI do MS
kbsafioravante, Sobre Docker tenho vários casos de uso com Web Sites rodando em Docker e ate mesmo com servidor de aplicação (wildfly, tomcat) 
e banco de dados (PostgreSQL e MySQL) rodando em containers Docker usando também o compose. 

Sei que esta eh uma discussão longa, mas se quiser trocar uma ideia em particular, pode me chamar. 
Vou deixa ai meu email e celular de contato:

Fone: 67 9 9275-2483

Flavio Aragon

unread,
Mar 18, 2017, 8:22:30 AM3/18/17
to Infraestrutura de TI do MS
Bom dia add 067 999392111
Reply all
Reply to author
Forward
0 new messages