Docker安裝Mysql5 7學習筆記

2021-10-09 18:47:23 字數 2187 閱讀 2094

centos7安裝docker學習筆記

# 搜尋自己需要的版本映象

docker search mysql

# 拉取官方映象(我們這裡選擇5.7,如果不寫後面的版本號則會自動拉取最新版)

docker pull mysql:5.7

# 檢視本地映象

docker images

mkdir /home/docker/mysql/ -p
cd /home/docker/mysql/conf

touch my.cnf

[mysqld]

user=mysql

character-set-server=utf8

default_authentication_plugin=mysql_native_password

[client]

default-character-set=utf8

[mysql]

default-character-set=utf8

docker run \

-p 3306:3306 \

--name mysql \

--restart always \

--privileged=true \

-v /home/docker/mysql/conf/my.cnf:/etc/my.cnf \

-v /home/docker/mysql/logs:/var/log/mysql \

-v /home/docker/mysql/data:/var/lib/mysql \

-e tz=asia/shanghai \

-e mysql_root_password=123456 \

-d mysql:5.7

# 命令說明

docker run \

-p 3306:3306 \ # 埠對映 宿主機:容器

--name mysql \ # 容器名稱

–restart always \ # 開機啟動

–privileged=true \ # 提公升容器內許可權

-v /home/docker/mysql/conf/my.cnf:/etc/my.cnf \ # 掛載配置檔案

-v /home/docker/mysql/logs:/var/log/mysql \ # 掛載日誌檔案目錄

-v /home/docker/mysql/data:/var/lib/mysql \ # 掛載資料目錄

-e tz=asia/shanghai \ # 指定時區

-e mysql_root_password=123456 \ # root 使用者密碼

-d mysql:5.7 # 後台啟動,拉取到的mysql映象

ps:使用 -v /etc/localtime:/etc/localtime:ro  掛載宿主機時間,我操作的時候,雖然容器內使用 date 命令檢視確實是與宿主機一致了,但是存入資料庫的時間,還是容器原來的時區,然後改為建立mysql容器的時候指定時區,問題解決了

# 檢視活躍的容器

docker ps

# 如果沒有 mysql 說明啟動失敗 檢視錯誤日誌

docker logs mysql

# 檢視 mysql的 ip 掛載 埠對映等資訊

docker inspect mysql

# 檢視 mysql的埠對映

docker port mysql

進入docker

docker exec -it mysql bash

mysql -uroot -p123456

需要進入docker本地客戶端設定遠端訪問賬號(我刪除了原來的容器,又重現建立容器後,沒有操作這一步也可以連線)

$ sudo docker exec -it mysql bash

$ mysql -uroot -p123456

mysql> grant all privileges on *.* to root@'%' identified by "123456";

現在就可以用客戶端進行遠端連線了

參考文章:

Docker環境安裝mysql5 7

docker pull mysql 5.7 使用docker命令啟動 docker run p 3306 3306 name mysql v mydata mysql log var log mysql v mydata mysql data var lib mysql v mydata mysql...

Docker 學習之安裝Mysql 5 7

docker pull mysql 5.7docker pull registry.cn hangzhou.aliyuncs.com acs sample mysql 5.7docker images建立資料對映資料夾,掛載資料到本地資料夾 mkdir p data mysql data data ...

docker建立mysql 5 7容器

宿主機mysql配置檔案路徑 root docker mysqletc mysql 宿主機mysql資料卷路徑 root docker mysqletc data 注 路徑可以自己定義 建立乙個臨時的msyql 5.7容器,目的是cp 容器裡mysql的配置檔案 docker run d p 330...