相关疑难解决方法(0)

如何在Docker容器中使用模式初始化MySQL数据库?

我正在尝试使用MySQL数据库创建一个容器,并为这些数据库添加一个模式.

我目前的Dockerfile是:

FROM mysql
MAINTAINER  (me) <email>

# Copy the database schema to the /data directory
COPY files/epcis_schema.sql /data/epcis_schema.sql

# Change the working directory
WORKDIR data

CMD mysql -u $MYSQL_USER -p $MYSQL_PASSWORD $MYSQL_DATABASE < epcis_schema.sql
Run Code Online (Sandbox Code Playgroud)

为了创建容器,我遵循Docker上提供的文档并执行此命令:

docker run --name ${CONTAINER_NAME} -e MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} -e MYSQL_USER=${DB_USER} -e MYSQL_PASSWORD=${DB_USER_PASSWORD} -e MYSQL_DATABASE=${DB_NAME} -d mvpgomes/epcisdb
Run Code Online (Sandbox Code Playgroud)

但是当我执行此命令时,不会创建Container,并且在Container状态下可以看到CMD未成功执行,实际上只mysql执行了命令.

无论如何,有没有办法用模式初始化数据库,还是我需要手动执行这些操作?

mysql database-schema docker

141
推荐指数
9
解决办法
13万
查看次数

标签 统计

database-schema ×1

docker ×1

mysql ×1