Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Erros usando docker rodando no ubuntu

Talvez minha experiência tentando me desafiar sirva para alguém que esteja no mesmo caminho passando por dificuldades. Estou rodando a aplicação proposta no curso usando docker e docker-compose rodando no ubuntu

Problemas no caminho: 1 - Não conseguir conectar usuário root - já que esse usuário é tratado pelo mysql como o mesmo usuário do sistema Solução: usar command: --default-authentication-plugin=mysql_native_password no arquivo docker-compose

2 - Tive que configurar também o arquivo de configuração do mysql dentro do container "/etc/mysql/mysql.conf.d/mysqld.cnf" descomentando e alterando a linha # bind-address = 127.0.0.1 para bind-address = [ip ou nome do container se pertencer a uma rede criada por você] não sei se já tem algum editor de texto instalado na versão linux do container, eu particularmente não achei, tive que instalar o vim apt-get install vim instale um editor de sua preferência para poder editar o arquivo

Gostaria de saber se e como é possível alterar essas configurações ao subir os containers. Se souber me fala que eu também quero saber :)

o repositório do mysql no https://hub.docker.com/_/mysql tem boas informações para configuração e ainda vale dar uma olhada na documentação do mysql para o seu sistema se estiver com problemas

Talvez sirva de referência para alguém (meu docker-compose):

version: "3.9"
services:
    mysql:
        build:
            dockerfile: ./docker/mysql.dockerfile
            context: .
        image: lipebritto/mysql
        container_name: mysql
        ports:
            - "3306:3306"
        volumes:
            - ./infrastructure/database:/var/lib/mysql
        env_file:
            - .env
        command: --default-authentication-plugin=mysql_native_password
        restart: always
        networks:
            - project-network
    node:
        build:
            dockerfile: ./docker/node.dockerfile
            context: .
        image: lipebritto/node
        container_name: node
        networks: 
            - project-network
        ports:
            - "3000:3000"
        volumes:
            - .:/var/www
        depends_on:
            - "mysql"

networks:
    project-network:
        driver: bridge
1 resposta
solução!

Boa tarde Felipe, tudo tranquilo?

Muito obrigado por compartilhar a sua experiência! Testar coisas novas e diferentes quando temos um projeto é sempre uma boa forma de fixar o conhecimento. Um conteúdo que utilizo bastante quando preciso conferir comandos do Docker é esse artigo do FreeCodeCamp.

Continue assim e bons estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software