I have tried all the solutions available on all forms but no success even tried using accepted answers docker-compose file but still getting the same error.
I am trying this on a freshly installed ubuntu 18 on VirtualBox. I have tried with all possible combinations of localhost, 127.0.0.1, changing user, etc.
Docker version 19.03.6, build 369ce74a3c
docker-compose version 1.25.4, build 8d51620a
docker-compose.yaml
version: '3.1'
services:
drupal:
image: drupal:8
container_name: drupal_container
environment:
DRUPAL_PROFILE: standard
DRUPAL_SITE_NAME: Drupal
DRUPAL_USER: user
DRUPAL_PASS: pass
DRUPAL_DBURL: mysql://user:pass@database:3306/db
#or mysql://user:pass@mysql_container:3306/db tried with both
links:
- "mysql:mysql"
depends_on:
- mysql
ports:
- 80:80
restart: always
volumes:
- /var/www/html/modules
- /var/www/html/profiles
- /var/www/html/themes
- /var/www/html/sites
restart: always
mysql:
image: mysql:5.7
container_name: mysql_container
restart: always
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: db
MYSQL_USER: user
MYSQL_PASSWORD: pass
ports:
- 3306:3306
expose:
- 3306
I am able to connect MySQL via command line and the docker exec command
sudo mysql --protocol=TCP -h127.0.0.1 -p3306 -uroot -proot
sudo mysql --protocol=TCP -h127.0.0.1 -p3306 -uuser -ppass
sudo mysql --protocol=TCP -hlocalhost -p3306 -uroot -proot
sudo mysql --protocol=TCP -hlocalhost -p3306 -uuser -ppass
docker-compose exec mysql mysql -uroot -proot -e "Show databases;"
docker-compose exec mysql mysql -uuser -ppass -e "Show databases;"
How can I fix this?
