你需要通过创建用户MysqL_USER
,MysqL_PASSWORD
ENV VAR和使用量/docker-entrypoint- initdb.d
与启动脚本映射目录(.sh
,.sql
,.sql.gz
)
docker run -p 3306:3306 --name MysqL-server \
-v ~/Development/web/myproject/docker/MysqL:/var/lib/MysqL \
-v ~/Development/web/myproject/docker/yourstartupscripts:/docker-entrypoint-initdb.d \
-e MysqL_ROOT_PASSWORD=root \
-e MysqL_USER=youruser \
-e MysqL_PASSWORD=youruserpassword \
-d MysqL:latest
解释来自:https ://hub.docker.com/_/MysqL/
这些变量是可选的,与创建新用户和设置该用户的密码一起使用。该MysqL_DATABASE
变量将为该用户授予超级用户权限(请参见上文)。这两个变量都是创建用户所必需的。
首次启动容器时,将创建一个具有指定名称的新数据库,并使用提供的配置变量进行初始化。此外,它会执行文件(可扩展).sh
,.sql
并且.sql.gz
是在发现/docker- entrypoint- initdb.d
。文件将按字母顺序执行。您可以通过将SQL转储安装到该目录中并为自定义图像提供贡献的数据来轻松地填充MysqL服务。默认情况下,sql文件将导入到MysqL_DATABASE
变量指定的数据库中。