因為有太多的人選擇直接在msyql官網下載社區版的mysql軟件,所以就不那樣寫教程了,在選擇的時候,我也盡量往可拓展性,輕性的方面選,先介紹下docker是什么:
Docker 是一個開源的應用容器引擎,基於 Go 語言 並遵從Apache2.0協議開源。
Docker 可以讓開發者打包他們的應用以及依賴包到一個輕量級、可移植的容器中,然后發布到任何流行的 Linux 機器上,也可以實現虛擬化。
容器是完全使用沙箱機制,相互之間不會有任何接口(類似 iPhone 的 app),更重要的是容器性能開銷極低。
Docker的應用場景
-
Web 應用的自動化打包和發布。
-
自動化測試和持續集成、發布。
-
在服務型環境中部署和調整數據庫或其他的后台應用。
- 從頭編譯或者擴展現有的OpenShift或Cloud Foundry平台來搭建自己的PaaS環境。
Docker 的優點
-
1、簡化程序:
Docker 讓開發者可以打包他們的應用以及依賴包到一個可移植的容器中,然后發布到任何流行的 Linux 機器上,便可以實現虛擬化。Docker改變了虛擬化的方式,使開發者可以直接將自己的成果放入Docker中進行管理。方便快捷已經是 Docker的最大優勢,過去需要用數天乃至數周的任務,在Docker容器的處理下,只需要數秒就能完成。 -
2、避免選擇恐懼症:
如果你有選擇恐懼症,還是資深患者。Docker 幫你 打包你的糾結!比如 Docker 鏡像;Docker 鏡像中包含了運行環境和配置,所以 Docker 可以簡化部署多種應用實例工作。比如 Web 應用、后台應用、數據庫應用、大數據應用比如 Hadoop 集群、消息隊列等等都可以打包成一個鏡像部署。 -
3、節省開支:
一方面,雲計算時代到來,使開發者不必為了追求效果而配置高額的硬件,Docker 改變了高性能必然高價格的思維定勢。Docker 與雲的結合,讓雲空間得到更充分的利用。不僅解決了硬件管理的問題,也改變了虛擬化的方式。
1、下載安裝docker
如果需要手動下載,請點擊以下鏈接下載 Stable 或 Edge 版本的 Docker for Mac。
如同 macOS 其它軟件一樣,安裝也非常簡單,雙擊下載的 .dmg 文件,然后將鯨魚圖標拖拽到 Application 文件夾即可。
從應用中找到 Docker 圖標並點擊運行。可能會詢問 macOS 的登陸密碼,輸入即可。
點擊頂部狀態欄中的鯨魚圖標會彈出操作菜單。
第一次點擊圖標,可能會看到這個安裝成功的界面,點擊 "Got it!" 可以關閉這個窗口。
啟動終端后,通過命令可以檢查安裝后的 Docker 版本。
$ docker --version
Docker version 17.12.0-ce, build c97c6d6
之后可以選擇采用鏡像加速,也可以不選擇,我這里沒有選擇
2、安裝並運行mysql
這里選擇采用終端方法:docker pull mysql
查找Docker Hub上的mysql鏡像
這里我們拉取官方的鏡像,標簽為5.7.19
runoob@runoob:~/mysql$ docker pull mysql:5.7.19
等待下載完成后,我們就可以在本地鏡像列表里查到REPOSITORY為mysql,標簽為5.7.19的鏡像。
MySQL(5.7.19)的默認配置文件是 /etc/mysql/my.cnf 文件。如果想要自定義配置,建議向 /etc/mysql/conf.d 目錄中創建 .cnf 文件。新建的文件可以任意起名,只要保證后綴名是 cnf 即可。新建的文件中的配置項可以覆蓋 /etc/mysql/my.cnf 中的配置項。
具體操作:
首先需要創建將要映射到容器中的目錄以及.cnf文件,然后再創建容器
# pwd /opt # mkdir -p docker_v/mysql/conf # cd docker_v/mysql/conf # touch my.cnf # docker run -p 3306:3306 --name mysql -v /opt/docker_v/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 -d imageID 4ec4f56455ea2d6d7251a05b7f308e314051fdad2c26bf3d0f27a9b0c0a71414
命令說明:
- -p 3306:3306:將容器的3306端口映射到主機的3306端口
- -v /opt/docker_v/mysql/conf:/etc/mysql/conf.d:將主機/opt/docker_v/mysql/conf目錄掛載到容器的/etc/mysql/conf.d
- -e MYSQL_ROOT_PASSWORD=123456:初始化root用戶的密碼
- -d: 后台運行容器,並返回容器ID
- imageID: mysql鏡像ID
查看容器運行情況
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
7442e17ffdb0 3e3878acd190 "docker-entrypoint.s…" 2 days ago Up 2 days 0.0.0.0:3306->3306/tcp mysql
3、安裝mysql客戶端
個人覺得Navicat-Premium最好用,分享在百度雲
鏈接:https://pan.baidu.com/s/1c3ra7hY 密碼:8cfe
工具比較簡單,就不做使用介紹了。
參考網址:http://www.runoob.com/docker/docker-tutorial.html