如何为数据库用户设置一次密码?



我已经开始了一个使用docker-compose的新项目,但是我的迁移和数据库查询正在下降,错误Access denied for user 'data-jobs'@'172.18.0.3' (using password: YES)

我有两个配置文件。.env用于我的旅行配置,.db.env用于我的数据库环境变量。我得到了这个错误,因为我改变了。env文件中的值,但没有在。db中。env文件。

我的问题是:

我如何使用我可以通过MYSQL_PASSWORDDB_PASSWORD到Laravel和MariaDB只使用一个配置键来防止我再次犯这个错误?

您的env变量名称错误,Docker mysql映像使用不同的键

MYSQL_USER
MYSQL_DATABASE
....

https://hub.docker.com/_/mariadbhttps://hub.docker.com/_/mysql

(MariaDB作为一个临时替代品使用相同的键)

如果你想使用自定义键,你需要在docker-compose.yml:

中映射它们。
db-data-jobs:
image: mariadb:10.6
container_name: db-data-jobs
restart: unless-stopped
tty: true
env_file:
- .db.env
volumes:
- db-data:/var/lib/mysql
- type: bind
source: /etc/localtime
target: /etc/localtime
ports:
- '3307:3306'
networks:
- app-net
environment:
- MYSQL_USER=${DB_USERNAME}

https://docs.docker.com/compose/environment-variables/

确保你的文件名称不要扭曲:.env.db.env

最新更新