项目docker-compose.yml部分如下
db:
image: mysql:5.7
container_name: db
environment:
- "MYSQL_ROOT_PASSWORD=123"
- "MYSQL_DATABASE=test"
- "TZ=Asia/Shanghai"
restart: always
volumes:
- /data:/var/lib/mysql
- ./init.sql:/docker-entrypoint-initdb.d/init_db.sql
...
发现不能初始化init_db.sql
解决方法:
SQL files in this folder will be loaded only if the DB‘s data directory is empty (the very first run of db service). (i.e) in your case /data folder should be empty.
我将/data内容删除了,docker-compose up -d 可以了。
参考地址:
https://stackoverflow.com/questions/54479941/how-to-init-mysql-database-in-docker-compose
原文:https://www.cnblogs.com/xuexishiguang/p/15087342.html