天天看點

CentOS中使用Dockerfile部署初始化sql檔案的mysql

場景

Docker中部署mysql資料庫:

CentOS中使用Dockerfile部署帶websocket的SpringBoot的jar包:

在上面部署Mysql鏡像和會使用Dockerfile的基礎上。

如果要實作定制化一個mysql鏡像,使容器運作起來就會有資料。

實作

1、建立檔案

在伺服器上某路徑下建立檔案夾mysqldockerfile,在此檔案夾下建立或者上傳如下四個檔案

CentOS中使用Dockerfile部署初始化sql檔案的mysql

 2、編輯utf8mb4.cnf資料字元編碼檔案

3、編輯腳本檔案install_data.sh

4、編輯Dockerfile檔案

5、最後init.sql是資料庫sql檔案

要注意這裡的設定編碼的地方

判斷是否已經存在資料庫,存在則删除掉,然後授予root權限。

最後删除建立表,然後插入表資料時要注意,避免出現中文亂碼問題,在插入資料前要添加

比如:

6、建構鏡像

注意後面有個點,代表Dockerfile在目前目錄

CentOS中使用Dockerfile部署初始化sql檔案的mysql

7、運作容器

8、運作成功後檢視運作中的容器

CentOS中使用Dockerfile部署初始化sql檔案的mysql
CentOS中使用Dockerfile部署初始化sql檔案的mysql
CentOS中使用Dockerfile部署初始化sql檔案的mysql
CentOS中使用Dockerfile部署初始化sql檔案的mysql

9、此時通路資料庫應該已經帶資料了

如果沒有資料,可以檢視日志

如果要修改腳本或者配置檔案等需要重新執行該過程,需要

停掉容器

删除掉容器

删除掉鏡像

然後修改後重新執行上面的過程。