docker-compose MySQL
Gera um docker-compose pronto para MySQL, com a senha de root, a porta 3306 publicada e volume persistente. Escolha a tag da imagem e suba o banco local.
YAML
—
Um MySQL local que sobrevive ao restart
Você precisa de um MySQL para desenvolver e não quer instalar o servidor direto no sistema, com serviço subindo no boot e a versão errada brigando com o outro projeto. Container resolve, mas aí vem a pergunta seguinte: qual a estrutura do docker-compose.yml, que variável de ambiente define a senha e onde os dados ficam guardados quando você derruba tudo.
O arquivo gerado tem um serviço chamado mysql com a imagem na tag que você escolher, MYSQL_ROOT_PASSWORD, a porta 3306 publicada e um volume nomeado mydata montado em /var/lib/mysql. Esse volume é a parte que importa: sem ele, um docker compose down leva o banco junto. Só existem dois campos aqui, versão e senha de root. Apesar do que a descrição sugere, não são gerados MYSQL_DATABASE nem MYSQL_USER.
Se a 3306 já estiver ocupada na sua máquina, mude o lado esquerdo do mapeamento para 3307 e conecte nessa porta. Lembre que as variáveis do MySQL só têm efeito na primeira inicialização, com o volume ainda vazio; trocar a senha depois exige apagar o volume com docker compose down -v. E não commite o arquivo com senha real, mesmo em ambiente local. O YAML é montado no navegador.
Perguntas frequentes
Como crio um banco e um usuário na subida?
Troquei a senha e o container ignorou. Por quê?
Como conecto a aplicação nesse banco?
Ferramentas Relacionadas
Docker Run → Compose
Converta um comando docker run para o equivalente docker-compose.yml automaticamente. Mapeia portas, volumes, variáveis de ambiente, redes e restart policies.
docker-compose Redis
Gera um docker-compose pronto para Redis, com a porta 6379 publicada e volume persistente. Escolha a tag da imagem e suba seu cache ou broker local com um docker compose up.
docker-compose PostgreSQL
Gere um docker-compose pronto para PostgreSQL, com usuário, senha, banco e volume persistente configurados. Suba seu banco local com um docker compose up.