1 做後臺守護式mysql容器 埠3308執行 設定密碼
docker run -di --name=mysql -p 3308:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
2 做目錄(配置檔案和資料檔案)和埠對映
2.1 建立資料夾
mkdir /mysql
mkdir /mysql/conf.d
mkdir /mysql/data/
2.2 書寫配置檔案
vim /mysql/my.cnf
# 書寫以下內容
[client]
default-character-set=utf8
[mysqld]
user=mysql
character-set-server=utf8
default_authentication_plugin=mysql_native_password
secure_file_priv=/var/lib/mysql
expire_logs_days=7
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
max_connections=1000
2.3 埠對映
docker run -di -v /mysql/data/:/var/lib/mysql -v /mysql/conf.d:/etc/mysql/conf.d -v /mysql/my.cnf:/etc/mysql/my.cnf -p 3306:3306 --name mysql5.7 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
測試容器是否純淨
# 建立庫,建立表,插入資料
# 關閉容器,刪除容器,mysql的容器沒了,但是資料在宿主機上放著
docker stop mysql2
docker rm mysql2
docker rm mysql -f
# 再執行起一個容器,做好目錄對映,發現資料都回來了
docker run -di -v /mysql/data/:/var/lib/mysql -v /mysql/conf.d:/etc/mysql/conf.d -v /mysql/my.cnf:/etc/mysql/my.cnf -p 3307:3306 --name mysql2 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7