Anda perlu membuat pengguna melalui MYSQL_USER
, MYSQL_PASSWORD
env vars dan gunakan volume /docker-entrypoint-initdb.d
untuk memetakan direktori dengan skrip startup Anda (.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
Penjelasan dari:https://hub.docker.com/_/mysql/
MYSQL_USER, MYSQL_PASSWORD
Variabel ini opsional, digunakan bersama untuk membuat pengguna baru dan menyetel sandi pengguna tersebut. Pengguna ini akan diberikan izin pengguna super (lihat di atas) untuk database yang ditentukan oleh MYSQL_DATABASE
variabel. Kedua variabel diperlukan agar pengguna dapat dibuat.
Menginisialisasi instance baru
Ketika sebuah wadah dimulai untuk pertama kalinya, database baru dengan nama yang ditentukan akan dibuat dan diinisialisasi dengan variabel konfigurasi yang disediakan. Selanjutnya akan mengeksekusi file dengan ekstensi .sh
, .sql
dan .sql.gz
yang ditemukan di /docker-entrypoint-initdb.d
. File akan dieksekusi dalam urutan abjad. Anda dapat dengan mudah mengisi layanan mysql Anda dengan memasang dump SQL ke direktori itu
dan berikan gambar khusus
dengan data kontribusi. File SQL akan diimpor secara default ke database yang ditentukan oleh MYSQL_DATABASE
variabel.