docker 安裝 mysql 並掛載目錄
阿新 • • 發佈:2018-12-25
歡迎轉載: 轉載請註明出處
開篇先講點廢話:
最近忽然發現用來開發的電腦硬碟的剩餘空間越來越小.沒辦法.只能刪除一部分東西.但是突然發現很多東西其實都是自己想要留下的.糾結不已;所以準備把自己的mysql本地服務幹掉.但有時候又會用到;所以準備將我的mysql 安裝到我的虛擬機器上;
看到這裡是不是有些人會想到.你按到你的虛擬機器中就不會佔用磁碟了麼.其實本人的虛擬機器是安裝到行動硬碟上的.所以是即插即用的.即使回家不帶電腦依然可以有mysql服務.redis服務,電腦只需要配置JDK基本上就可以進行後端開發了,
OK.廢話就到這裡.開始幹正事
至於Linux Centos 的安裝我就不做記錄了;只要你有個映象掛載就可以了;
本人使用的是centos 7.5
首先.在我們的電腦上安裝docker
yum search docker yum install docker # 中途安裝過程中停下了.看到提示Y/N 的就輸入 Y # 剩下的就是耐心的等待了 OK 安裝好Docker後; # 啟動docker服務 systemctl start docker.service # 開機啟動docker systemctl enable docker.service docker search mysql # 提一下.安裝的時候我選擇是5.7的版本.穩定好用.不收費 docker pull docker.io/mysql:5.7 # 等待映象拉取成功
# 映象拉取下來之後
docker images
# 檢視映象
# 下面開始建立自己要掛載的目錄資料夾 # 本人喜歡把自己安裝的東西放在opt 目錄下面 # 到指定目錄 cd /opt # 級聯建立目錄 mkdir -p docker/mysql/data docker/mysql/conf # 進入本地配置資料夾 cd /opt/docker/mysql/conf # 建立配置檔案 touch my.cnf # 填寫自己的mysql配置 vi my.cnf # 我的配置.通常都是字符集與埠的配置,喜歡怎麼配置可以自己配.也可以直接使用我的 [client] port=3306 default-character-set=utf8 [mysql] default-character-set=utf8 [mysqld] default-character-set = utf8 character_set_server=utf8 character_set_client=utf8 collation-server=utf8_general_ci sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES # OK 最重要的一步 cd /opt # 為我們的掛載目錄賦予許可權 很重要真的很重要.以後不論你們做什麼映象.凡是掛載目錄切記要為目錄賦予許可權 # 否則.執行映象後會發現statu 狀態為exited chmod -R 777 mysql #-----------------------------------------------------------------------# # 執行並掛載目錄 docker run -it --name ocpmysql5.7 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root --privileged=true -v /opt/docker/mysql/conf/my.cnf:/etc/mysql/my.cnf -v /opt/docker/mysql/data:/var/lib/mysql -v /opt/docker/mysql/logs:/var/log/mysql -d --restart=always mysql:5.7 # 引數解釋 -- name 為你執行的映象命名 -p 對映埠 docker埠 : 虛擬機器埠 -e 為mysql設定密碼 -- privileged=true 為mysql獲取root許可權 -v 掛載目錄/檔案 虛擬機器目錄/檔案:docker目錄/檔案 -d 守護程序後臺執行 -it 啟動並執行 --restart=always 在docker服務重啟後,自動重啟mysql服務,也可以吧docker 服務作為開機啟動.這樣mysql就可以跟著開機啟動了 mysql:5.7 映象名稱:tag # 跟著一步一步的弄下來一般不會出錯 # 當映象執行起來後.先不要急著從外部連線.還有一步很重要 # 那就是開通埠 # 檢視那些埠已經開通 firewall-cmd --list-ports # 開通埠 firewall-cmd --zone=public --add-port=3306/tcp --permanent # 重啟防火牆 firewall-cmd --reload # 檢視埠是否開啟成功 firewall-cmd --zone=public --query-port=3306/tcp # 埠開啟成功 使用native 或者 SQLyog進行連線
這是我連線後.自己匯入了一部分資料庫.
因為這是我昨天安裝後寫的總結;如果大家按照我的部落格在安裝過程中有什麼問題.可以留言.或者傳送郵件到我的郵箱
我的郵箱:[email protected]