Receita para montagem do ambiente em docker com PHP 7.4, Mysql, NGINX, phpMyAdmin e XDEBUG
Este repositório tem como objetivo padronizar o ambiente de desenvolvimento do CETT referente aos projetos Joomla. Nos fornece uma certa facilidade que por meio de alguns comandos como segue abaixo, o ambiente ser montado com todos os padrões e agilidade possível.
I M P O R T A N T E
- Não recomendo criar um clone deste repositório, porque você irá criar um clone do projeto dentro da pasta html, e pode surgir conflitos ao tentar commitar os projetos.
- Crie os arquivos individualmente seguindo os modelos aqui disponíveis.
PASSOS
- Escolha o melhor diretório que você irá montar seu ambiente, e crie o arquivo docker-compose.yml igual o aqui disponibilizado (Você precisa pegar o conteúdo do arquivo aqui no git e colar dentro do arquivo que você criou);
- Crie um diretório chamado environment e dentro dele o diretório php7.4, e por fim crie o arquivo Dockerfile conforme disponibilizado (Você precisa pegar o conteúdo do arquivo dockerfile aqui no git e colocar dentro do arquivo que você criou);
- Crie um diretório chamado db que será utilizado como volume do banco de dados que iremos importar para desenvolvimento;
- Crie um diretório chamado log e dentro outro diretório chamado nginx. Este será responsável por armazenar os logs de erros do servidor web;
- Crie um diretório chamado html que será utilizado como volume para o código fonte do projeto que será desenvolvido.
Exemplo:
Diretório Principal
|__ db
|__ environment
|__ php7.4
|__ html
|__ log
|__ nginx
|__ docker-compose.yml
INFORMAÇÕES IMPORTANTES
-
Utilizando o terminal, acesse o diretório que você criou os arquivos, e execute os seguintes comandos para preparar o ambiente
-
No mesmo nível do arquivo docker-compose.yml digite:
$ docker-compose build
Este comando tem como função verificar se os arquivo criados estão corretos, e preparar as imagens;$ docker-compose up -d
Este comando vai subir as imagens, disponibilizando para uso$ docker-compose ps -a
Execute este comando para verificar se as imagens estão montadas e os containers estão em execução e seus statusSerá criado 3 containers
docker_mysql-jdev_1
-- Foi definido um IP: 172.20.0.10
-- Mais sobre MySQLdocker_php-7.4-jdev_1
-- Foi definido um IP: 172.20.0.12
-- Mais sobre PHP7.4docker_phpmyadmin-jdev_1
-- Foi definido um IP: 172.20.0.11
-- Mais sobre phpMyAdmin
Comandos Importantes:
- docker-compose start: Executa todos os container's
- docker-compose stop: Parar a execução de todos os container's
- docker-compose down: Não execute este comando, desde que realmente tenha certeza do que está fazendo. Ele vai destruir todos os container's
Outras especificações e detalhes importantes para configurar e utilizar corretamente o ambiente dev com o docker
- docker-compose start: Executa todos os container's
