Docker compose/WordPress/PhpMyAdmin

Com o Docker compose é possível criar vários containers de uma só vez de acordo com as necessidades da sua aplicação, com o compose é possível criar a infraestrutura inteira da sua aplicação com um único arquivo. Isso é possível utilizando um arquivo no formato YAML (docker-compose.yml) indicando nesse arquivo as instruções necessárias para a criação do nosso cluster de containers, e as images que vamos utilizar, os volumes, as variáveis, as portas que vamos expor e etc.

Exemplos:

WordPress

Vamos criar a estrutura para o wordpress:

[root@notebook docker]# mkdir wordpress 

[root@notebook docker]# cd wordpress/

E criamos nosso compose file:

[root@notebook wordpress]# touch docker-compose.yml 

Executamos:

[root@notebook wordpress]# docker-compose up -d 
Starting wordpress_mysql_1 ... done
Starting wordpress_wordpress_1 ... done

Verificamos:

[root@notebook wordpress]# docker-compose ps 
        Name                       Command               State          Ports         
-------------------------------------------------------------------------------------
wordpress_mysql_1       docker-entrypoint.sh mysqld      Up      3306/tcp             
wordpress_wordpress_1   docker-entrypoint.sh apach ...   Up      0.0.0.0:8080->80/tcp 

Agora é só acessar nosso Browser e acessar “localhost:8080” e prosseguir com a instalação.

phpMyAdmin

Um outro exemplo de docker-compose bem legal pra ilustrar a funcionalidade do docker-compose é integrando um container de banco MySQL com o phpMyAdmin.

Vamos lá:

[root@notebook docker]# mkdir phpmyadmin 

[root@notebook docker]# cd phpmyadmin/

E criamos nosso docker-compose:

[root@notebook phpmyadmin]# touch docker-compose.yml 

E inserimos o seguinte conteúdo:

Startamos:

[root@notebook phpmyadmin]# docker-compose up -d 
Creating phpmyadmin_db_1
Creating phpmyadmin_phpmyadmin_1

Verificamos:

[root@notebook phpmyadmin]# docker-compose ps
         Name                       Command             State          Ports         
------------------------------------------------------------------------------------
phpmyadmin_db_1           docker-entrypoint.sh mysqld   Up      3306/tcp             
phpmyadmin_phpmyadmin_1   /run.sh phpmyadmin            Up      0.0.0.0:8080->80/tcp 

Acessamos nosso Browser “localhost:8080” e voilá:

É possível verificar os logs do nosso docker-compose utilizando o seguinte comando:

[root@notebook phpmyadmin]# docker-compose logs -f 

CONCLUSÃO:
Estes foram dois exemplos simples de como utilizar o docker-compose, ao longo dos meus estudos tentarei subir aplicações mais complexas utilizando o compose versão 3, linkando diversos containers, utilizando networks, volumes, replicação e etc.

Referência:
https://hub.docker.com/r/phpmyadmin/phpmyadmin/