以下過程,以官方mysql 5.7鏡像爲基礎,構建了一個新的mysql鏡像,僅替換了mysql配置文件。mysql
1.下載docker mysql 5.7官方鏡像,命令以下:sql
docker pull mysql:5.7
下載完成後,查看鏡像是否已經存在,以下圖:docker
2.任意目錄下,放置好本身的mysql配置文件,名稱爲config-file.cnf,並新建文件Dockerfile,以下圖:數據庫
3.在Dockerfile文件中,寫入以下內容:bash
FROM mysql:5.7 MAINTAINER shangyingbin COPY config-file.cnf /etc/mysql/conf.d/
4.構建鏡像,命令以下:工具
docker build -t omc/mysql:1.0 .
結果以下圖:ui
5.查看鏡像,剛剛建立的鏡像已經出如今列表中了,以下圖:spa
6.以此鏡像,啓動一個容器,命令以下:命令行
docker run --name mysql -e MYSQL_ROOT_PASSWORD=12345 -p 3306:3306 -v /home/docker-mysql-data:/var/lib/mysql/ -d omc/mysql:1.0
解釋:3d
--name mysql,爲容器命名,方便識別,也方便後續的操做,好比啓動、中止容器,即可以用名字表明容器,如docker stop mysql
-e MYSQL_ROOT_PASSWORD=12345,指定mysql中root用戶的密碼,爲12345
-p 3306:3306,指定端口映射,將容器內的3306端口,映射到本機的3306端口,這樣外部便可經過本機的IP和3306端口便可訪問數據庫了
-v /home/docker-mysql-data:/var/lib/mysql/,將容器內mysql的數據目錄/var/lib/mysql,映射到本機的/home/docker-mysql-data目錄下
7.查看鏡像是否已經啓動,命令以下:
8.可經過mysql工具鏈接此服務,驗證服務啓動是否正常。
9.中止服務命令以下:
docker stop mysql
10.從新啓動服務,命令以下:
docker start mysql
11.進入容器,命令以下:
docker exec -it mysql /bin/bash
12.在容器內,命令行方式登陸mysql,命令以下:
mysql -h 127.0.0.1 -uroot -p
提示輸入密碼,密碼即爲建立容器時指定的12345
13.要退出容器,先退出mysql,而後直接執行exit命令便可,退出後,容器依然正常運行。