Docker

Configure um servidor MySQL e phpMyAdmin com Docker

Configure um servidor MySQL e phpMyAdmin com Docker
Neste artigo, vou mostrar como usar o Docker Compose para criar um contêiner MySQL e acessá-lo usando phpMyAdmin 5, a interface de administração MySQL baseada na web. Também mostrarei como acessar o servidor de banco de dados MySQL em execução em um contêiner Docker do DataGrip IDE. Então vamos começar.

Requisitos:

Para seguir este artigo, você deve ter o Docker instalado no seu computador. LinuxHint tem muitos artigos que você pode seguir para instalar o Docker na distribuição Linux desejada, se ainda não o tiver instalado. Portanto, certifique-se de verificar LinuxHint.com caso você esteja tendo problemas para instalar o Docker.

Instalando o Docker Compose:

Você pode baixar o arquivo binário do Docker Compose facilmente com o seguinte comando:

$ sudo curl -L "https: // github.com / docker / compose / releases / download / 1.24.1 /
docker-compose - $ (uname -s) - $ (uname -m) "-o / usr / local / bin / docker-compose

NOTA: ondulação pode não estar instalado na sua distribuição Linux. Se for esse o caso, você pode instalar o curl com o seguinte comando:

Ubuntu / Debian / Linux Mint:

$ sudo apt install curl -y

CentOS / RHEL / Fedora:

$ sudo dnf install curl -y

Uma vez docker-compose arquivo binário é baixado, execute o seguinte comando:

$ sudo chmod + x / usr / local / bin / docker-compose

Agora, verifique se docker-compose comando está funcionando da seguinte maneira:

versão $ docker-compose

Deve imprimir as informações da versão conforme mostrado na imagem abaixo.

Configurando o Docker Compose para o projeto:

Agora, crie um diretório de projeto (digamos ~ / docker / mysqldev) do seguinte modo:

$ mkdir -p ~ / docker / mysqldev

Agora, navegue até o diretório do projeto ~ / docker / mysqldev do seguinte modo:

$ cd ~ / docker / mysqldev

Agora, crie um docker-compose.yaml arquivo no diretório do projeto ~ / docker / mysqldev e digite as seguintes linhas no docker-compose.yaml Arquivo.

versão: "3.7 "
Serviços:
servidor mysql:
imagem: mysql: 8.0.19
reiniciar: sempre
meio Ambiente:
MYSQL_ROOT_PASSWORD: segredo
volumes:
- mysql-data: / var / lib / mysql
portas:
- "3306: 3306"
phpmyadmin:
imagem: phpmyadmin / phpmyadmin: 5.0.1
reiniciar: sempre
meio Ambiente:
PMA_HOST: mysql-server
PMA_USER: root
PMA_PASSWORD: segredo
portas:
- "8080: 80"
volumes:
mysql-data:

O docker-compose.yaml o arquivo deve ser o seguinte.

Aqui, criei 2 serviços servidor mysql e phpmyadmin.

servidor mysql serviço irá executar o mysql: 8.0.19 imagem (do DockerHub) em um contêiner do Docker.

phpmyadmin serviço irá executar o phpmyadmin / phpmyadmin: 5.0.1 imagem (do DockerHub) em outro contêiner do Docker.

Dentro servidor mysql serviço, o MYSQL_ROOT_PASSWORD variável de ambiente é usada para definir o raiz senha do MySQL.

Dentro phpmyadmin serviço, o PMA_HOST, PMA_USER, PMA_PASSWORD variáveis ​​de ambiente são usadas para definir o nome de host MySQL, nome de usuário e senha respectivamente que o phpMyAdmin usará para se conectar ao servidor de banco de dados MySQL rodando servidor mysql serviço.

Dentro servidor mysql serviço, todo o conteúdo do / var / lib / mysql diretório será salvo permanentemente no mysql-data volume.

No servidor mysql serviço, o porto de contêineres 3306 (direita) é mapeado para a porta do host Docker 3306 (deixou).

No phpmyadmin serviço, o porto de contêineres 80 (direita) é mapeado para a porta do host Docker 8080 (deixou).

Iniciando o servidor MySQL e os serviços phpMyAdmin:

Agora, para começar o servidor mysql e phpmyadmin serviços, execute o seguinte comando:

$ docker-compose up -d

Os serviços devem começar em segundo plano.

Para ver como as portas são mapeadas, execute o seguinte comando:

$ docker-compose ps

Como você pode ver, para o servidor mysql serviço, a porta do host Docker 3306 é mapeado para a porta TCP do contêiner 3306.

Para o phpmyadmin serviço, a porta do host Docker 8080 é mapeado para a porta TCP do contêiner 80.

Acessando o servidor phpMyAdmin 5 ou MySQL de outros computadores:

Se você deseja acessar phpMyAdmin 5 ou servidor de banco de dados MySQL de outros computadores em sua rede, você deve saber o endereço IP de seu host Docker.

Para encontrar o endereço IP do seu host Docker, execute o seguinte comando:

$ ip

No meu caso, o endereço IP do meu host Docker 192.168.20.160. Será diferente para você. Portanto, certifique-se de substituí-lo pelo seu a partir de agora.

Acessando phpMyAdmin 5 do navegador da web:

Para acessar o phpMyAdmin 5, abra seu navegador da web e visite http: // localhost: 8080 do seu host Docker ou http: // 192.168.20.160: 8080 de outros computadores em sua rede.

phpMyAdmin 5 deve ser carregado em seu navegador.

Você verá o seguinte aviso. Clique em Descubra o porquê.

Agora clique em Crio.

UMA phpmyadmin banco de dados deve ser criado e o aviso deve ser eliminado.

Agora, você pode usar o phpMyAdmin para gerenciar seus bancos de dados e tabelas MySQL.

Acessando o MySQL a partir do DataGrip:

Você também pode acessar seu servidor de banco de dados MySQL a partir do DataGrip IDE ou qualquer outro SQL IDEs.

No caso do DataGrip, clique em + de Bancos de dados seção e vá para Fonte de dados > MySQL.

Agora, digite 192.168.20.160 como Hospedeiro, 3306 como Porta, raiz como Do utilizador, segredo como Senha e então clique em Conexão de teste.

Se tudo estiver bem, você deve ver as informações do servidor de banco de dados MySQL conforme mostrado na imagem abaixo.

Agora clique em OK.

Agora, você deve ser capaz de gerenciar seus bancos de dados MySQL e tabelas do DataGrip.

Parando o servidor MySQL e os serviços phpMyAdmin:

Agora, para parar o servidor mysql e phpmyadmin serviços, execute o seguinte comando:

$ docker-compose down

O servidor mysql e phpmyadmin serviços devem ser interrompidos.

Limpando os dados do servidor MySQL:

Se você deseja remover todos os dados e configurações do banco de dados MySQL, você deve remover o mysql-data volume.

Você pode encontrar o nome real do volume com o seguinte comando:

$ docker volume ls

Como você pode ver, o volume a ser removido é mysqldev_mysql-data.

Você pode remover o volume mysqldev_mysql-data com o seguinte comando:

$ docker volume rm mysqldev_mysql-data

Referências:

[1] https: // hub.docker.com / _ / mysql
[2] https: // hub.docker.com / r / phpmyadmin / phpmyadmin /

Melhores emuladores de console de jogo para Linux
Este artigo irá listar software de emulação de console de jogo popular disponível para Linux. A emulação é uma camada de compatibilidade de software q...
Melhores distros Linux para jogos em 2021
O sistema operacional Linux percorreu um longo caminho desde sua aparência original, simples e baseada em servidor. Este sistema operacional melhorou ...
Como capturar e transmitir sua sessão de jogo no Linux
No passado, jogar era considerado apenas um hobby, mas com o tempo a indústria de jogos viu um grande crescimento em termos de tecnologia e número de ...