Essa é uma imagem docker criada para start simplificado de bases de dados utilizando o motor MariaDB, tendo como base um sistema minimalista, simples, flexível e robusto chamado Alpine.
As palavras-chave "DEVE", "NÃO DEVE", "REQUER", "DEVERIA", "NÃO DEVERIA", "PODERIA", "NÃO PODERIA", "RECOMENDÁVEL", "PODE", e "OPCIONAL" presentes em qualquer parte deste repositório devem ser interpretadas como descritas no RFC 2119. Tradução livre RFC 2119 pt-br.
Consulte a guia Tags no repositório deste projeto no Docker Hub para ter acesso a lista de versões disponíveis.
- Porta 3306 exposta
- Arquivo my.cnf customizado e mínimo
- Shell padrão: sh
Essa instrução cria o container utilizando um volume, essa abordagem permite persistir a base de dados fora do container:
docker run -d --name mariadb -p 3306:3306 -v mariadb:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root fabiojanio/mariadb
Veja a lista de variáveis que podem ser passadas como parâmetro na criação do container. Ao omitir essas variaveis na criação do container, o respectivo valor padrão será atribuido:
- MYSQL_ROOT_PASSWORD=root
- MYSQL_DATABASE
- MYSQL_PORT=3306
- MYSQL_USER
- MYSQL_PASSWORD
- MYSQL_CHARACTER=utf8
- MYSQL_COLLATION_SERVER=utf8_unicode_ci
Obs: caso o volume de dados já exista, ao criar um novo container a senha do usuário ROOT será preservada, este comportamento foi configurado no mysql_start.sh como forma de evitar alterações "descuidadas por parte do usuário.
Após a criação do container é possível se conectar a ele desta forma:
docker exec -it mariadb sh
Disponibilizei um docker-compose.yml prontinho para subir uma aplicação php + apache + banco de dados MariaDB, efetue o download do arquivo, modifique os parâmetros necessários e posteriormente execute a instrução abaixo no mesmo local em que se encontra o arquivo docker-compose.yml:
docker-compose up -d
Neste arquivo os containers estão nomeados como web e mariadb. Para se conectar:
docker exec -it web bash
e
docker exec -it mariadb sh
Os passos anteriores estão configurados para utilizar a imagem já compilada disponível no Docker Hub, entretanto, caso queira compilar sua própria imagem, basta efetuar o download do arquivo Dockerfile, mysql_start.sh e my.cnf, modificar o que for necessário e executar a instrução:
docker build -t mariadb:latest .
Posteriormente pode criar o container executando:
docker run -d --name mariadb -p 3306:3306 -v mariadb:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root mariadb
E para conectar ao container executando:
docker exec -it mariadb sh
Para maiores informações, leia o arquivo de licença disponível neste repositório.