Я перепробовал несколько вариантов и сильно запутался в настройке соединения 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](https://i.stack.imgur.com/Hrxl3.png)
![enter image description here](https://i.stack.imgur.com/RHLIH.png)