【发布时间】:2021-01-21 19:06:21
【问题描述】:
有没有办法通过 Dockerfile 或 docker-compose.yml 将所有权限授予 root? 我正在尝试像这样启动 mysql:latest 映像:
docker-compose.yml
version: "3.9"
services:
mysql_database:
container_name: mysql_test_server
restart: always
build: .
image: mysql:latest
command: --default-authentication-plugin=mysql_native_password
ports:
- 3306:3306
volumes:
- ./data:/var/lib/mysql
- ./config:/etc/mysql/conf.d
environment:
MYSQL_ROOT_PASSWORD: root
dockerfile(构建:. on .yml)
FROM mysql:latest
RUN mysql -u root -proot -h localhost -p 3306
RUN grant all privileges on *.* to 'root'@'%' identified by 'root';
RUN flush all privileges;
RUN exit;
EXPOSE 3306
TLDR;我只想自动授予远程连接(SQLYog、DBeaver 等)的权限...如果 docker-compose up,运行此命令,因此我不需要手动执行,例如 docker exet -it mysql_test_server mysql -u root ...
我已经明白了:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
【问题讨论】:
标签: mysql docker docker-compose remote-connection