DEV Community

Cover image for Como criar um container com MySQL Server com Docker e conectá-lo no Workbench [Linux]
Natália Oliveira
Natália Oliveira

Posted on

31 1 1

Como criar um container com MySQL Server com Docker e conectá-lo no Workbench [Linux]

Esse texto tem fins educacionais. Fiz o procedimento para acompanhar a matéria de banco de dados na faculdade e espero que te ajude a estudar algumas coisinhas.

Caso não tenha o Docker instalado ainda, abra o terminal e atualize os pacotes:



sudo apt-get update


Enter fullscreen mode Exit fullscreen mode

Instale esses pacotes:



sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common


Enter fullscreen mode Exit fullscreen mode

Adicione a GPG key oficial do Docker:



curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -


Enter fullscreen mode Exit fullscreen mode

Adicione o repositório:



sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"


Enter fullscreen mode Exit fullscreen mode

Atualize os pacotes novamente e adicione o Docker Engine:



sudo apt-get install docker-ce docker-ce-cli containerd.io


Enter fullscreen mode Exit fullscreen mode

Para evitar ter que usar o sudo o tempo todo, crie um grupo docker e adicione seu user no grupo:



$ sudo groupadd docker
$ sudo usermod -aG docker $USER
$ newgrp docker


Enter fullscreen mode Exit fullscreen mode

Abra e feche o terminal, depois rode um docker run hello-world para checar que está tudo ok.

Criando container com MySQL Server

Para criar um container com o MySQL faça o seguinte:



docker run -p 3306:3306 --name=seu-container -d mysql/mysql-server


Enter fullscreen mode Exit fullscreen mode

Esse comando roda um container chamado “seu-container” a partir de uma imagem do MySQL Server e mapeia a porta 3306 do container com a sua de mesmo número. Dê um docker ps e veja o que tem rodando na sua máquina.

Se conectando no MySQL Server e configurando senha

Pegue a senha randômica gerada:



docker logs seu-container 2>&1 | grep GENERATED


Enter fullscreen mode Exit fullscreen mode

Copie a root password que apareceu e rode o comando:



docker exec -it seu-container mysql -uroot -p


Enter fullscreen mode Exit fullscreen mode

Cole a password e dê enter. Depois disso, já no server, digite:



ALTER USER 'root'@'localhost' IDENTIFIED BY '12345';


Enter fullscreen mode Exit fullscreen mode

Isso vai mudar a senha padrão do usuário para 12345. Depois rode o seguinte:



update mysql.user set host = '%' where user='root';


Enter fullscreen mode Exit fullscreen mode

Esse comando vai permitir que você conecte o Workbench no container. Dê um ctrl-D e depois um docker restart seu-container.

Conectando no MySQL Workbench

Vá ao MySQL Workbench e clique na instância local:

Alt Text

Depois disso você poderá colocar a senha:

Alt Text

Pronto, aparecerá uma telinha e aconselho você a explorar o que tem nela.


Fontes:
MySQL Server Docker
StackOverflow
Install Docker


Esse texto não tem intenção de esgotar o tema. Acrescente nos comentários, e também aponte erros quando os identificar.

Sentry image

Hands-on debugging session: instrument, monitor, and fix

Join Lazar for a hands-on session where you’ll build it, break it, debug it, and fix it. You’ll set up Sentry, track errors, use Session Replay and Tracing, and leverage some good ol’ AI to find and fix issues fast.

RSVP here →

Top comments (2)

Collapse
 
jmauriciorlima profile image
José Maurício

Material super didático. Agradecido @nfo94 .

Collapse
 
nosrednawall profile image
Anderson José de Souza Inácio

Perfeito, muito obrigado.

A Workflow Copilot. Tailored to You.

Pieces.app image

Our desktop app, with its intelligent copilot, streamlines coding by generating snippets, extracting code from screenshots, and accelerating problem-solving.

Read the docs

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay