在CentOs7系統中搭建docker測驗MySQL
前言
對于大部分初學者朋友來說想要嘗試在docker環境下使用mysql,使用阿里云,騰訊云之類的雖然更簡單但花費也會增多,那為啥不自己來搭建一個簡單的liunx系統試試呢?
CentOS7系統搭建
先在官網下載鏡像,這里我用的是VMware15.5
先新建一個虛擬機:

先創建一個空白硬碟

選擇liunx下centos7系統:

把你的虛擬機放在自定義檔案夾里

根據需求分配磁盤空間

在這里自定義硬體

在這里選擇你下載好的鏡像,其他設定的根據自己的需求來

就完成了!接下來我們進入虛擬機配置
這里選擇你的語言

把這些配置好直接開始安裝

設定你的root密碼和登錄賬號

完成后重啟就可以開始配置了
建議使用xshell遠程連接工具,這樣更方便一點,但centos7系統搭建完成后無法正常顯示ip,這里需要先進行搭建前的準備:
進入vi編輯器將網卡配置中的ONBOOT修改為YES(輸入完成后按ESC輸入:wq回車保存退出):
$ vi /etc/sysconfig/network-scripts/ifcfg-ens33
重啟網路服務:
$ service network restart
使用ip addr 查看ip即可與xshell連接
安裝docker
重啟后輸入賬號密碼登錄你的CentOS7系統,su命令進入root管理員模式開始配置:
1.通過 uname -r 命令查看你當前的內核版本
$ uname -r
2、root權限更新Yum包
$ yum update
3、卸載舊版本:(如果安裝過舊版本的話)
$ yum -y remove docker docker-common docker-selinux docker-engine
4、設定Yum源:
$ yum install -y yum-utils device-mapper-persistent-data lvm2
執行以下命令,添加docker的yum源
$ yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
5、查看所有倉庫中docker版本,并選擇特定版本安裝:
$ yum list docker-ce --showduplicates | sort -r
6、安裝docker (此處我們安裝社區版 docker-ce):
$ yum install docker-ce
7、啟動并加入開機啟動
$ systemctl start docker (重啟命令 $ systemctl restart docker )
$ systemctl enable docker 開機啟動
$ docker version 查看docker版本號
8、驗證是否安裝成功
$ docker run hello-world
顯示hello from docker則測驗成功!但可能報Unable to find image ‘hello-world:latest’ locally的問題,這是因為docker服務器在國外,基于網速與“和諧墻”的問題,所以我們在國內操作國外鏡像可能無法正常拉取,這需要我們為docker設定國內的阿里云鏡像加速器,
解決辦法:
1.創建檔案daemin.json檔案(直接使用vi編輯器創建)
$ vi /etc/docker/daemon.json
2.組態檔添加,輸入完成后按ESC輸入:wq回車保存退出
{
"registry-mirrors": ["https://alzgoonw.mirror.aliyuncs.com"]
}
3.重啟docker服務
$ systemctl restart docker
$ sudo systemctl status docker
再重復之前的拉取hello word鏡像就可以了!
docker安裝MySQL
1.查找MySQL鏡像:
$ docker search mysql
2.拉起MySQL鏡像(:5.7 表示5.7版本):
$ docker pull mysql:5.7
3.運行MySQL容器:
$ docker run -d -p 3306:3306 --privileged=true -v /docker/mysql/conf/my.cnf:/etc/my.cnf -v /docker/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysql mysql:5.7 --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci
引數說明:
- run run 是運行一個容器
- -d 表示后臺運行
- -p 表示容器內部埠和服務器埠映射關聯
- –privileged=true 設值MySQL 的root用戶權限, 否則外部不能使用root用戶登陸
- -v /docker/mysql/conf/my.cnf:/etc/my.cnf 將服務器中的my.cnf配置映射到docker中的/docker/mysql/conf/my.cnf配置
- -v /docker/mysql/data:/var/lib/mysql 同上,映射資料庫的資料目錄, 避免以后docker洗掉重新運行MySQL容器時資料丟失
- -e MYSQL_ROOT_PASSWORD=123456 設定MySQL資料庫root用戶的密碼
- –name mysql 設值容器名稱為mysql
- mysql:5.7 表示從docker鏡像mysql:5.7中啟動一個容器
- –character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci 設值資料庫默認編碼
4.進入容器:
$ docker exec -it mysql bash
5.執行MySQL命令, 輸入root密碼, 連接MySQL:
$ mysql -uroot -p
6.輸入密碼后, 執行下面命令創建新用戶 (用戶名: test , 密碼: test123 可以自己定義)
$ GRANT ALL PRIVILEGES ON *.* TO 'test'@'%' IDENTIFIED BY 'test123' WITH GRANT OPTION;
這樣你的mysql就搭建完成了!
但這樣的資料庫有一個問題,當年關閉虛擬機以后會導致再次啟動無法連接到navicat工具,所以這里建議加一個開機自啟:
systemctl enable docker
設定容器自動重啟:
docker update --restart=always 容器ID(或者容器名)
這樣你的mysql就搭建完成了!
但這樣的資料庫有一個問題,當年關閉虛擬機以后會導致再次啟動無法連接到navicat工具,所以這里建議加一個開機自啟:
systemctl enable docker
設定容器自動重啟:docker update --restart=always 容器ID(或者容器名)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/289711.html
標籤:其他
