https://hub.docker.com/_/mariadb
我很好奇我是不是走错了路???我基本上需要cat
自定义配置变量到my.cnf
。这可以通过docker-compose.yml
完成吗?还是我最好创建一个单独的Dockerfile来创建SQL映像,允许远程连接,从而添加一个用户、GRANT、FLUSH等?
这是我的码头组合。yml:
services:
app:
build: .
ports:
- "80:80"
volumes:
- ./project:/home
sql:
image: mariadb
ports:
- "3606:3606"
restart: always
environment:
MYSQL_ROOT_PASSWORD: root
编辑|
/doker入口点initdb.d/setup.sh
mysql -u root -e "CREATE USER 'apps'@'%' IDENTIFIED BY ''; GRANT ALL PRIVILEGES ON *.* TO 'apps'@'%'; FLUSH PRIVILEGES;"
我需要在docker compose.yml中添加一些内容吗???
您可以利用这一点:When a container is started for the first time [...], it will execute files with extensions .sh, .sql, .sql.gz, and .sql.xz that are found in /docker-entrypoint-initdb.d
您可以创建一个具有所需规格的脚本(用户创建等(,并将其放在/docker-entrypoint-initdb.d
目录中。它将用您需要的东西初始化数据库,在您可以放入/etc/mysql/conf.d
的其他配置之上
只需使用绑定挂载,或者使用带有ADD
或COPY
的自定义映像