Docker 安裝 mysql 詳解
制作
its-mysql:1.0
鏡像
說明:
在使用基于centos+mysql的方式寫Dockerfile做鏡像,發現體積過于太大,是docker hub上提供的mysql鏡像的大小3~4倍,docker hub上的大小為324MB,是以這裡選型使用官網的鏡像。
使用兩種方式制作鏡像
第一種:
1)下載下傳鏡像
docker pull mysql:5.6.38
鏡像位址:
https://hub.docker.com/_/mysql/2)、建立資料庫盤目錄
mkdir -p /home/docker/Mysql/mysql_data
3)、啟動鏡像
docker run -d -p 3306:3306 -e mysqld -e MYSQL_ROOT_PASSWORD=123456 -e MYSQL_USER=its -e MYSQL_PASSWORD=its -e MYSQL_DATABASE=its -v /home/docker/Mysql/mysql_data:/var/lib/mysql --name itsDB -v /etc/localtime:/etc/localtime:ro mysql:5.6.38 --lower_case_table_names=1
- -d 背景運作
- -p 設定映射端口
- -e 設定環境變量
- -v mysqldata 目錄映射到主機上
- -v /etc/localtime:/etc/localtime:ro 設定容器的時間與主控端同步
- --name 取個名字
- --lower_case_table_names=1 設定表名參數名等忽略大小寫
4)、檢視鏡像
docker ps
傳回
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e7e5ca7b8f77 mysql:5.6.38 "docker-entrypoint..." 4 seconds ago Up 3 seconds 0.0.0.0:3306->3306/tcp itsDB
連結即可,mysql 容器建立成功
這個方式非常簡單,友善,但是有一定的局限性,比如我像一次執行,把腳本給跑進去,這個就需要使用 Dockerfile檔案了。
第二種方式:Dockerfile
位址:
http://www.jb51.net/article/115422.htm
裡面寫的很詳細了,也就不重複寫了,核心思想就是 把腳本穿上去,然後在啟動後,把資料一同跑進去。