使用Docker-compose部署mysql的簡單步驟
前言
雖然docker部署環(huán)境比自己下載安裝包要方便不少,但是docker的命令還有掛載目錄在每次啟動容器的時候都去找命令對使用者是很不友好的,而且有時候要啟動多個容器的時候顯然一個個的啟動是很麻煩的。所以如果可以事先將"啟動腳本"寫好的話,之后就算虛擬機重啟了,再啟動容器也就是執(zhí)行"啟動腳本"就好了,docker-compose很好的解決了這個問題。
一、Docker-compose簡介
個人理解:容器編排工具,對于大多數(shù)人來說可能最大的作用是被當(dāng)成啟動容器的腳本了。它可以實現(xiàn)一次性啟動多個容器,它的自動重啟容器策略也很好用。
二、部署步驟
1. 在/root 目錄下新建目錄docker-compose,在/root/docker-compose目錄下新建mysql文件件
cd /root mkdir docker-compose && cd docker-compose mkdir mysql && cd mysql
2 準(zhǔn)備掛載文件
(如果不需要修改配置文件此步可跳過,然后docker-compose.yml文件掛載時刪除配置文件的掛載)
在 /root/docker-compose/mysql 文件夾下新建config文件夾,在conf文件下新建my.cnf 文件
mkdir config && cd config vim my.cnf
將下面的配置文件復(fù)制到 my.cnf中
[mysqld] user=mysql default-storage-engine=INNODB character-set-server=utf8 [client] default-character-set=utf8 [mysql] default-character-set=utf8
3.編寫docker-compose.yml文件
在/root/docker-compose/mysql文件夾下新建docker-compose.yml文件,
cd /root/docker-compose/mysql
vim docker-compose.yml
加下面內(nèi)容復(fù)制到 docker-compose.yml 中
version: '3' services: mysql: image: mysql restart: always container_name: mysql environment: MYSQL_ROOT_PASSWORD: password TZ: Asia/Shanghai ports: - 3306:3306 volumes: - /root/docker-compose/mysql/data:/var/lib/mysql - /root/docker-compose/mysql/config/my.cnf:/etc/mysql/my.cnf command: --max_connections=1000 --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci --default-authentication-plugin=mysql_native_password
注意docker-compose.yml 第8行設(shè)置mysql root 賬號登錄的密碼,這里的 password 修改為自己需要的密碼即可。
4. 啟動
docker-compose up -d
總結(jié)
即使之后宿主機重啟了,只要到docker-compose.yml文件所在的位置,執(zhí)行docker-compose up -d命令就可以啟動容器了,事實上如果docker-compose.yml文件中配置了容器的重啟策略為always,那么每次重啟docker時都會重啟相關(guān)的容器,即不需要執(zhí)行docker-compose up -d命令也會自動重啟mysql容器。
相關(guān)文章
Docker 配置網(wǎng)絡(luò)使用bridge網(wǎng)絡(luò)的方法
本篇文章主要介紹了Docker 配置網(wǎng)絡(luò)使用 bridge 網(wǎng)絡(luò)的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-03-03詳解Docker下搭建Jenkins構(gòu)建環(huán)境
這篇文章主要介紹了詳解Docker下搭建Jenkins構(gòu)建環(huán)境,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-05-05Docker如何訪問到宿主機MYSQL的實現(xiàn)方法
使用?Docker?能實現(xiàn)服務(wù)的容器化,并使用容器間網(wǎng)絡(luò)在它們之間進行通信,本文主要介紹了Docker如何訪問到宿主機MYSQL的實現(xiàn)方法,感興趣的可以了解一下,感興趣的可以了解一下2023-09-09