Docker離線部署Mysql8.0


Docker離線部署Mysql8.0

說明:

在有網絡的環境上制作Mysql8.0的鏡像包,導出並上傳至無網絡的環境上,啟動mysql即可


1.搜索Mysql鏡像包

docker search mysql

2.拉取Mysql8.0鏡像

說明:

如果:后不寫版本號,則默認拉取最新的

docker pull mysql:8.0

查看鏡像

docker images

3.創建數據目錄和配置文件

3.1在宿主機創建mysql的配置文件的目錄

mkdir -p /usr/local/mysql_docker/conf

3.2在配置文件目錄下創建MySQL的配置文件my.cnf

touch /usr/local/mysql_docker/conf/my.cnf

3.3編輯配置文件信息

 cd /usr/local/mysql_docker/conf/
 vim my.cnf
 [client]
 # socket = /usr/local/mysql_docker/mysqld.sock
 default-character-set = utf8mb4
 [mysqld]
 # pid-file        = /var/run/mysqld/mysqld.pid
 # socket          = /var/run/mysqld/mysqld.sock
 # datadir         = /var/lib/mysql
 # socket = /usr/local/mysql_docker/mysqld.sock
 # pid-file = /usr/local/mysql_docker/mysqld.pid
 datadir = /usr/local/mysql_docker/data
 character_set_server = utf8mb4
 collation_server = utf8mb4_bin
 secure-file-priv= NULL
 # Disabling symbolic-links is recommended to prevent assorted security risks
 symbolic-links=0
 # Custom config should go here
 !includedir /etc/mysql/conf.d/​

3.4在宿主機創建mysql的數據目錄

mkdir -p /usr/local/mysql_docker/data

4.創建容器並啟動MySQL

docker run -d -p 13306:3306 --name mysql_docker -v /usr/local/mysql_docker/conf/my.cnf:/etc/mysql/my.cnf -v /usr/local/mysql_docker/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123123 mysql:8.0

說明:

-d: 后台運行容器

-p :指定容器暴露的端口,映射宿主機端口號和容器端口號

--name:指定容器名字,后續可以通過名字進行容器管理

-v:掛載宿主機目錄和 docker容器中的目錄,前面是宿主機目錄,后面是容器內部目錄

-e :環境參數,MYSQL_ROOT_PASSWORD設置root用戶的密碼

5.進入容器內部,解決遠程連接問題

docker exec -it mysql_docker /bin/bash

5.1 連接Mysql

mysql -uroot -p

5.2 修改訪問主機以及密碼,設置所有主機可訪問

use mysql
alter user 'root'@'%' identified with mysql_native_password by '123123';

5.3 刷新權限

flush privileges;

5.4 退出

exit

6.測試遠程是否能連接成功

如下圖所示:成功

7.導出鏡像

docker save -o mysql8.tar mysql:8.0

8.將鏡像包mysql8.tar上傳至無網絡的環境上,執行

docker load -i mysql8.tar

查看鏡像是否導入進來

docker images

9.直接啟動Mysql

docker run -d -p 13306:3306 --name mysql_docker -v /usr/local/mysql_docker/conf/my.cnf:/etc/mysql/my.cnf -v /usr/local/mysql_docker/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123123 mysql:8.0

這樣就使用docker成功離線安裝了MySQL

 


免責聲明!

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



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