【发布时间】:2020-04-01 17:53:17
【问题描述】:
我已经尝试了所有表单上可用的所有解决方案,但即使尝试使用接受的答案 docker-compose 文件也没有成功,但仍然遇到相同的错误。
我正在 VirtualBox 上新安装的 ubuntu 18 上尝试这个。我已经尝试了 localhost、127.0.0.1、更改用户等所有可能的组合。
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
我可以通过命令行和 docker exec 命令连接 MySQL
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;"
我该如何解决这个问题?
【问题讨论】:
标签: mysql docker drupal docker-compose