《容器化系列二》利用Docker容器化技術安裝多個mysql


前提說明

安裝的Linux系統版本為Centos7.x

一、安裝docker並測試

1、安裝yum相關工具包

///安裝yum相關工具包
yum install -y yum-utils device-mapper-persistent-data lvm2

//發些報錯,關閉剛剛睡眠中的進程
kill -9 13312

//再次執行
yum install -y yum-utils device-mapper-persistent-data lvm2

 2、添加docker的下載源

建議用下面的阿里源

//添加阿里的安裝源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

//進入yum的倉庫配置目錄進行查看
[root@Linux-docker1 ~]# cd /etc/yum.repos.d/
[root@Linux-docker1 yum.repos.d]# ls

//元數據緩存的建立
yum makecache fast

3、安裝docker

//注:安裝的是docker社區版本
yum -y install docker-ce

//安裝完我們驗證一下
[root@Linux-docker1 yum.repos.d]# rpm -qa |grep docker

 4、更改鏡像源為國內阿里雲節點,並指定docker數據存儲目錄

mkdir -p /data/docker
mkdir -p /etc/docker
vim /etc/docker/daemon.json
//注:docker安裝好后默認沒有此文件,需要手動創建,添加阿里雲鏡像節點,並指定docker存儲目錄
//按i鍵進入編輯,按Esc鍵退出編輯模式,按:wq進行保存
 { "registry-mirrors": ["https://ehdjgsyp.mirror.aliyuncs.com"],"graph": "/data/docker" } 

 5、啟動docker,並加入開機啟動

//啟動docker
systemctl start docker
//加入開機自啟
systemctl enable docker

6、測試驗證docker是否啟動

//從倉庫下載hello-world鏡像
docker pull hello-world

//查看本地鏡像
[root@Linux-docker1 yum.repos.d]# docker images

//啟動鏡像
[root@Linux-docker1 yum.repos.d]# docker run hello-world

二、下載鏡像並啟動mysql容器

1、下載mysql鏡像

//下載mysql鏡像
docker pull mysql
--如果下載失敗,請多試幾次,如果實在沒速度,就需要去看上面添加的阿里鏡像源是否有填寫正確

2、啟動mysql容器

//啟動mysql容器
docker run --name docker-mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3333:3306 -d mysql
##參數說明
-name容器的別稱。
-p端口映射。格式是主機的端口:容器的端口。
-e設置容器的環境變量。-e MYSQL_ROOT_PASSWORD= 123456就代表mysq的root的密碼是123456
-d使用鏡像包名稱,可以通過docker images查看

3、驗證查看容器狀態

--查看容器狀態
docker ps -a

 4、直接進mysql的容器中的bash

//docker exec -it 容器名 /bin/bash

docker exec -it docker-mysql /bin/bash
//進去以后
mysql -uroot -p
//密碼是剛剛設置的123456

5、用本地的Navicate進行連接

①確認環境

首先安裝docker的那台Linux宿主機的ip為 192.168.59.132

對應的mysql端口為3333

msyql賬號root

mysql密碼123456

 

 

 ②發現報錯

 2059-Authentication plugin 'caching.sha2_password' cannot be loaded:..@..gv頗

③解決問題

需要利用上面第4步在docker的mysql容器中執行這條sql語句

alter user 'root'@' %' identified with mysql_native_password by '123456';

上面123456需要改成你自己mysql設置的密碼

 

 

 測試連接成功

到此,我們的一個數據庫安裝成功

三、安裝第2個mysql數據庫

1、啟動mysql容器,更改端口和容器名稱即可

//啟動mysql容器,更改端口3333改成3334,防止端口沖突,還需要更改容器名稱把之前的docker-mysql隨便改成不同的即可,這里改成了docker-mysql-2
docker run --name docker-mysql-2 -e MYSQL_ROOT_PASSWORD=123456 -p 3334:3306 -d mysql
這樣新的mysql容器又起來了

 

2、用Navicate進行連接

首先安裝docker的那台Linux宿主機的ip為 192.168.59.132

對應的mysql端口為3334(上面那個是3333)

msyql賬號root

mysql密碼123456

 

 后續步驟應該不用多說了吧

 

 

 

 

 

 3、以此類推可以安裝其他的mysql,只需要映射的端口號和容器名不同即可

四、其他說明

1、doker關閉容器

//docker stop +容器名或者+容器的id
docker stop $CONTAINER_ID

2、容器的id在哪找

//直接docker ps -a 一下
docker ps -a

3、手動關閉后的容器怎么啟動

//直接start一下即可+容器名或者+容器id
docker start docker-mysql

4、怎樣關閉docker的服務

//直接用系統服務進行關閉,關閉以后,里面的容器也會相應關閉!所以請先關停里面的容器,再關閉docker服務!
systemctl stop docker

5、啟動docker的服務

//直接利用系統服務去啟動
systemctl start docker

 

 

欲知如何配置容器自己的IP

請聽下回分解          

2020.07.23           


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM