【发布时间】:2021-04-25 05:45:01
【问题描述】:
我在 Docker 中遇到了 mysql:5.7 的问题。我知道有很多关于这个的问题,但我就是无法让它发挥作用。
我只是想使用 docker-compose 创建一个 mysql:5.7 容器,并在 STARTUP 上使用以下设置!!:
- 使用密码“mypw”创建用户“root”
- 允许 root 用户从所有主机和容器进行访问
- 创建一个名为“mytable”的表
我的 yml:
db:
build: "."
command:
- "--default-authentication-plugin=mysql_native_password"
ports:
- "3306:3306"
environment:
- MYSQL_ROOT_PASSWORD="mypw"
volumes:
- "./mysql/database:/var/lib/mysql"
我尝试了什么:
- Dockerfile: COPY ./mysqld.cnf /etc/mysql/mysql.conf.d/mysqld.cnf
- mysqld.cnf 末尾包含“bind-address = 0.0.0.0”行
- 将脚本添加到 /docker-entrypoint-initdb.d/,内容为“CREATE DATABASE mydb;”
- MYSQL_USER、MYSQL_PASSWORD、MYSQL_DATABASE 变量(也无法连接)
- 在 mysqld.cnf 中使用 skip-grant-tables(错误)
- MYSQL_ROOT_HOST="%"
我只是不明白为什么要特别允许来自任何地方的访问如此困难。
谁能帮忙看看在哪里放什么?
谢谢
【问题讨论】: