MYSQL_USER
を使用してユーザーを作成する必要があります 、MYSQL_PASSWORD
envvarsおよびusevolume/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_USER、MYSQL_PASSWORD
これらの変数はオプションであり、新しいユーザーを作成し、そのユーザーのパスワードを設定するために組み合わせて使用されます。このユーザーには、MYSQL_DATABASE
で指定されたデータベースに対するスーパーユーザー権限(上記を参照)が付与されます。 変数。ユーザーを作成するには、両方の変数が必要です。
新しいインスタンスの初期化
コンテナを初めて起動すると、指定した名前の新しいデータベースが作成され、指定された構成変数で初期化されます。さらに、拡張子が.sh
のファイルを実行します 、.sql
および.sql.gz
/docker-entrypoint-initdb.d
にあります 。ファイルはアルファベット順に実行されます。 そのディレクトリへのSQLダンプのマウント
カスタム画像
を提供します 寄稿されたデータで。 SQLファイルは、デフォルトでMYSQL_DATABASE
で指定されたデータベースにインポートされます。 変数。