前提說明
安裝的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
2020.07.23