2020-08-12

2020-08-12 03:36:26

docker建立mysql

centos安裝docker的方法可以到https://docs.docker.com/engine/install/centos/參考

1.操作系統

本文中操作系統用的是centos7

2.centos中建立mysql範例

2.1首先需要下載mysql8的映象

這裏用的映象爲mysql的最新版本,如果需要別的版本的mysql,可以自行去docker hub中找到自己想要下載的mysql版本

冒號後跟隨的是版本好,我這裏使用的是最新版本

[root@localhost ~]# docker pull mysql:latest

2.2建立mysql範例

這裏如果用的最新的mysql版本,遇到了個小問題,如果沒有耐心的夥伴可以直接看下一個標題

docker run -p 3306:3306 --name mysql -v /docker_data/mysql/log:/var/log/mysql -v /docker_data/mysql/data:/var/lib/mysql -v /docker_data/mysql/conf:/etc/mysql -e MYSQL_ROOT_PASSWORD=724055 -d mysql:latest

上述建立mysql範例的命令中

參數 說明
-p 3306:3306    將容器的3306埠對映到主機的3306埠
--name mysql 給範例起名
-v /docker_data/mysql/log:/var/log/mysql 將容器中的/var/log/mysql 掛載到宿主機的/docker_data/mysql/log
-v /docker_data/mysql/data:/var/lib/mysql  
-v /docker_data/mysql/conf:/etc/mysql  
-e MYSQL_ROOT_PASSWORD=724055 給範例的root使用者指定密碼

 

 

 

 

 

 

 

 

 

 

2.3檢視範例狀態

[root@localhost ~]# docker ps -a

我們看到docker的狀態爲Exited,並非Up,由此可知範例是啓動失敗了

檢視日誌(最後面的mysql爲我們建立範例時給的範例名),可以看出是因爲容器中只有/var/lib/mysql-files目錄並沒有我們所指定的/var/lib/mysql目錄

[root@localhost ~]# docker logs mysql

刪除範例重建(最後的字串是範例id),可以看到mysql範例已經成功啓動

[root@localhost ~]# docker rm -f 1c6827c773b3
[root@localhost ~]# docker run -p 3306:3306 --name mysql -v /docker_data/mysql/log:/var/log/mysql -v /docker_data/mysql/data:/var/lib/mysql-files -v /docker_data/mysql/conf:/etc/mysql -e MYSQL_ROOT_PASSWORD=724055 -d mysql:latest