Я не могу заставить mysql и phpmyadmin работать с Laradock, у меня есть все варианты, рекомендуемые здесь - PullRequest
0 голосов
/ 23 апреля 2019

enter image description here Я перепробовал несколько вариантов и сильно запутался в настройке соединения mysql с Laradock. Я изменил версию MySQL на 5.7 и 5.6 взаимозаменяемо и до сих пор получаю ошибки.

Каждый раз, когда я получаю

Illuminate\Database\QueryException  : SQLSTATE[HY000] [2002] Connection refused (SQL: select * from information_schema.tables where table_schema = api and table_name = migrations)

Laravel project .env

DB_CONNECTION=mysql
DB_HOST=mysql
DB_PORT=3310
DB_DATABASE=api
DB_USERNAME=root
DB_PASSWORD=root

Ларадок .env

### MYSQL #################################################

MYSQL_VERSION=latest
MYSQL_DATABASE=api
MYSQL_USER=root
MYSQL_PASSWORD=root
MYSQL_PORT=3310
MYSQL_ROOT_PASSWORD=root
MYSQL_ENTRYPOINT_INITDB=./mysql/docker-entrypoint-initdb.d

docker-compose.yml

### MySQL ################################################
    mysql:
      build:
        context: ./mysql
        args:
          - MYSQL_VERSION=${MYSQL_VERSION}
      environment:
        - MYSQL_DATABASE=${MYSQL_DATABASE}
        - MYSQL_USER=${MYSQL_USER}
        - MYSQL_PASSWORD=${MYSQL_PASSWORD}
        - MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
        - TZ=${WORKSPACE_TIMEZONE}
      volumes:
        - ${DATA_PATH_HOST}/mysql:/var/lib/mysql
        - ${MYSQL_ENTRYPOINT_INITDB}:/docker-entrypoint-initdb.d
      ports:
        - "${MYSQL_PORT}:3310"
      networks:
        - backend

Мне пришлось изменить порт с 3306 на 3310, так как он жаловался, что порт уже выделен

enter image description here

enter image description here

1 Ответ

0 голосов
/ 24 апреля 2019

Я могу понять проблему. Чтобы помочь любому, кто может столкнуться с этим безобразием. Во-первых, у меня уже работает MySQL на порте 3306, который является версией 8.0 и пытается запустить docker-compose up -d mysql , это помечает ошибку, поэтому я решил изменить порт на 3310 на docker-compose .yml и Laradock .env и сохраняют 3306 на проекте .env. и работает отлично. Я попытался войти в консоль mysql, чтобы прочитать порт. Я изменил DB_HOST на mysql в .env, а также на phpmyadmin - на порт 8080, сервер = mysql.

...