[PROMOÇÃO] Assine com + 30% de desconto ANUAL MENSAL (últimas horas)
Matheus Baptista
Criador Matheus Baptista 22/02/2018

Subi o container do mysql

https://i.imgur.com/Skem5pI.jpg

Porém quando tento me conectar ao Workbench não consigo

https://i.imgur.com/xTbttbb.jpg

https://i.imgur.com/tT1kqwc.jpg

Ja tentei utilizar como Hostname localhost e 0.0.0.0

 

Manager Carlos Ferreira 22/02/2018

Olá, Matheus!
Tudo bem?

Se quiser subir também o container do PhpMyAdmin, pode combinar o comando "phpmyadmin"
O PhpMyAdmin roda na porta 8080
Usuário: root
Password: root
Host: mysql


O nome do container do MySql se chama "mysql", ao invés de colocar o IP e hostname, coloca o nome do container do Docker que está o processo do MySQL.

Carlos Ferreira
Criador Matheus Baptista 22/02/2018

Esqueci de mencionar anteriormente que ja reinstalei o Workbench/Docker/laradock e o erro persistiu...

 

Tentei colocar mysql como hostname e não deu certo, também tentei com o nome do container e também não deu

https://i.imgur.com/IslStoJ.jpg

Infelizmente também não tive sucesso com o phpMyAdmin...

https://i.imgur.com/XsRsdxV.jpg

Matheus Baptista
Manager Carlos Ferreira 22/02/2018

Os dados que você colocou estão corretos.

Fiz um teste aqui também, subi o meu ambiente não com o nginx, mas, desta vez com o apache2. Funcionou corretamente.

O estranho é que seu container do MySQL está rodando com sucesso...

Faz um teste, usa o mesmo Laradock que eu, compactei o que tenho aqui os arquivos, use ele e me retorna. Segue: https://drive.google.com/open?id=1rFLF1eoylKKzt9xZ21XZkyBGLLjNLqJp

Expiremente deletar as imagens do Docker que tem salvas, especialmente as do MySQL.
Como faz isso?
#listar imagens:
docker images

#deletar imagem
docker rmi ID_IMAGEM

Carlos Ferreira
Criador Matheus Baptista 22/02/2018

Fiz os procedimentos conforme recomendado, utilizei seu laradock porém o resultado é o mesmo....

Um detalhe é que quando eu tento utilizar 0.0.0.0 como hostname o erro é esse

https://i.imgur.com/RXm2fyA.jpg

Matheus Baptista
Criador Matheus Baptista 22/02/2018

É normal quando ao criar uma conexão no Workbench esses dados ficarem em brancos?

https://i.imgur.com/j0ZY2re.jpg

Matheus Baptista
Manager Carlos Ferreira 22/02/2018

Oi Matheus, como vai?

Obrigado pelo retorno.

Windows e ferramentas de desenvolvimento... problemas na certa rs

No caso, suas aplicações que rodam dentro do container do Docker consegue se conectar ao banco de dados mysql?

Para você não perder muito tempo, se quiser usar o Vagrant ou alguma outra ferramenta enquanto solucionamos este caso. (Vagrant: https://www.especializati.com.br/categoria/curso-de-vagrant)

Experimentou subir outro banco de dados, como por exemplo o postgres?

Primeiro pare os container que estão rodando:
docker-compose down

Suba o nginx com o Postgres:
docker-compose up -d nginx postgres pgadmin

O postgres roda na porta: 5432
E por PgAdmin roda na porta: 5050 (http://localhost:5050)

Carlos Ferreira
Criador Matheus Baptista 22/02/2018

Então, ao tentar rodar o comando php artisan migrate ele me retorna isso:

https://i.imgur.com/5AhYxrg.png

Quando entro no conteiner do mysql, ele funciona perfeitamente:

https://i.imgur.com/GHHckXV.png

Subi o postgres e pgadmin, consegui acessar normal o pgadmin...

 

Matheus Baptista
Manager Carlos Ferreira 22/02/2018

Certo. Está quase lá! :)

No arquivo os dados de acesso ao host, você colocou assim?
DB_HOST=mysql

Porque não pode colocar o IP, e sim o nome do container que está rodando o banco de dados.

Carlos Ferreira
Criador Matheus Baptista 22/02/2018

Troquei o DB_HOST para mysql:

https://i.imgur.com/27DsFHv.png

Matheus Baptista
Manager Carlos Ferreira 22/02/2018

Sempre que usei o Laradock foi com o nginx.

No caso, se quiser como com o Postgres funcionou, se quiser usar este banco de dados....

Pesquisando sobre o problema, encontrei essa solução nesse idioma louco: https://qiita.com/k-waragai/items/cc0ad847cf8391c796db

Primeiro passo pare os containers que possam estar rodando:
docker-compose stop

No arquivo .env precisa alterar algumas versões das imagens dos containers utilizadas:
PHP_FPM_VERSION=56

De:
APACHE_HOST_HTTP_PORT=80
APACHE_HOST_HTTPS_PORT=443

Para:
APACHE_HOST_HTTP_PORT=8888
APACHE_HOST_HTTPS_PORT=8443

No arquivo mysql/Dockerfile altere
De:
FROM mysql:8.0
Para:
FROM mysql:5.5

No arquivo apache2/Dockerfile altere
De:
FROM webdevops/apache:ubuntu-16.04
Para:
FROM webdevops/apache:centos-7


Por último no arquivo docker-compose.yml altere
De:
dockerfile: "Dockerfile-${PHP_VERSION}"
Para:
dockerfile: "Dockerfile-${PHP_FPM_VERSION}"

E, de:
./php-fpm/php${PHP_VERSION}.ini:/usr/local/etc/php/php.ini
./php-fpm/php${PHP_FPM_VERSION}.ini:/usr/local/etc/php/php.ini


Após isso suba os containers:
docker-compose up -d workspace mysql php-fpm apache2

Carlos Ferreira
Criador Matheus Baptista 22/02/2018

Consegui resolver!

https://github.com/laradock/laradock/issues/1407

Eu ja tinha tentado colocar a versão 5.7 do mysql no .env mas não tinha voltado, a diferença é que ele passa um comando para deletar a database do mysql. Sendo assim, reconstrui o container dele e tudo certo! Ufa...

Matheus Baptista
Manager Carlos Ferreira 22/02/2018

Que maravilha que deu certo. Obrigado por compartilhar a solução!

Carlos Ferreira
Anderson Souza 22/02/2018

Olá, estou tento o mesmo problema.

Não consigo conectar o workbench ao mysql.

 

Pode me ajdaur?

Anderson Souza
Anderson Souza 22/02/2018

Pessoal, consegui resolver o problema da seguinte forma :

Editei o arquivo laradock/.env, modifiquei a versão do MYSQL_VERSION de latest para 5.7

executei o comando :  re-build docker-compose build mysql

e depois : docker-compose up -d mysql 

 

: ) agora posso continuar com o curso.

Anderson Souza
Manager Carlos Ferreira 22/02/2018

Show Anderson!
Que bom que conseguiu resolver, e obrigado por compartilhar a solução.

Abs;

Carlos Ferreira
Ricardo Sparapan 22/02/2018

Nenhuma solução dessas foi eficaz pra mim. Isso porque na nova verão do laradock eles forçam a instalação da versão 8.0

SOLUÇÃO:

Altere a verão no arquivo .env pra 5.7

No arquivo laradock/mysql/dockerfile também coloque:

ARG MYSQL_VERSION=5.7

Execute os comandos nessa ordem:  

docker-compose stop

docker-compose build --no-cache nginx mysql

docker-compose up -d nginx mysql phpmyadmin

acessar o phpmyadmin: http://127.0.0.1:8080/

servidor: mysql

user:root

senha:root

Isso também vai servir pro Workbench

Ricardo Sparapan
Sabe a Solução? Ajude a resolver!

Precisa estar logado para conseguir responder a este ticket!

Clique Aqui Para Entrar!