終於要進入到Docker技術系列了,感謝大家的持續關注。
為什么要選擇Docker?因為Docker 輕巧快速,提供了可行、經濟、高效的替代方案。舉個例子,安裝Nginx,Mysql,Redis等常用的開發軟件,一句命令就搞定了。不僅為我們開發,測試,部署提供方便,也能節省時間去處理更重要的事情。

那我們下面來了解下Docker是什么?
一、 Docker的基本概念
Docker 包括三個基本概念:
鏡像(Image)
:相當於是一個 root 文件系統。比如官方鏡像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系統的 root 文件系統。比如說nginx,mysql,redis等軟件可以做成一個鏡像。容器(Container)
:容器可以被創建、啟動、停止、刪除、暫停等。倉庫(Repository)
:一個代碼控制中心,用來保存鏡像。DockerHub 是一個由 Docker 公司運行和管理的基於雲的存儲庫。它是一個在線存儲庫,Docker 鏡像可以由其他用戶發布和使用。有兩種庫:公共存儲庫和私有存儲庫。如果你是一家公司,你可以在你自己的組織內擁有一個私有存儲庫,而公共鏡像可以被任何人使用。
剛開始使用,盡可能的會使用,了解其解決什么痛點,隨着我們使用的深入,逐步了解其原理和結構是如何實現的。
二、Docker 安裝與配置
1、下載與安裝Docker Desktop for Mac
在Docker hub 網站上搜索
Docker desktop for Mac
,如下,點擊get docker 即可自動完成docker軟件下載。
2、第三方鏡像地址下載
官網下載比較慢,也可以通過國內鏡像下載。地址如下:
對於10.10.3以下的用戶 推薦使用Docker Toolbox
Mac安裝文件:
http://mirrors.aliyun.com/docker-toolbox/mac/docker-toolbox/
對於10.10.3以上的用戶 推薦使用Docker for Mac
Mac安裝文件:
http://mirrors.aliyun.com/docker-toolbox/mac/docker-for-mac/
下載完成后,打開下載文件目錄,找到對應的安裝包。雙擊啟動安裝程序,拖動到應用程序文件夾開始啟動安裝過程。
3、安裝可能會出現的問題。
注意:啟動安裝后,提示來源不可靠,是否安裝,點擊確定安裝。特別注意這個地方,第一個彈出框輸入的是mac管理密碼,第二個輸入的才是docker的賬號密碼。驗證后,繼續安裝。
4、驗證docker是否安裝成功
輸入以下命令,
docker version
如果有輸出版本的,那么恭喜你安裝成功。

三、Docker 鏡像加速器
1、為什么要配置加速器?
使用 Docker 時需要首先下載一個官方鏡像,例如 mysql、wordpress。然而由於網絡原因,下載一個 Docker 官方鏡像可能會需要很長的時間,甚至下載失敗。
2、如何獲取加速器?
這里我們使用阿里雲docker鏡像加速器:阿里雲的docker鏡像加速器需要注冊賬號,每個人都有自己唯一的地址。
https://dev.aliyun.com/search.html
3、如何配置加速器?
Docker for Mac的用戶,可以參考以下配置步驟:
右鍵點擊桌面頂欄的 docker 圖標,選擇 Preferences ,在 Docker Engine 標簽下的 Registry mirrors 列表中將鏡像地址的數組:
"registry-mirrors": ["https://你的前綴地址.mirror.aliyuncs.com"]
點擊 Apply & Restart按鈕,等待Docker重啟並應用配置的鏡像加速器。

4、檢驗加速器是否配置成功
執行 docker info
命令,返回結果中包含以下內容,則說明配置成功。
https://你的前綴地址.mirror.aliyuncs.com/
四、Docker 命令學習
安裝完了Docker,我們先簡單的熟悉一下Docker的基本命令。Docker的命令跟git的命令大部分概念類似。
Docker 鏡像最常用的三個基本操作 login、pull、push。
1、登陸(login)
假如說需要拉去私有的倉庫,那么需要登陸到阿里雲的倉庫,
方式一:輸入用戶名密碼登陸
docker login registry.cn-hangzhou.aliyuncs.com
輸入用戶名和密碼進行登陸
Username:登陸名
Password:密碼
Login Succeeded
方式二:指定登陸名登陸
docker login --username=你的地址@aliyun.com registry.cn-hangzhou.aliyuncs.com
輸入密碼進行登陸。
注意:Docker客戶端登錄時使用的用戶名為阿里雲賬戶全名,密碼是在阿里雲設置的密碼。
通過查看 config.json 文件,確認您的登錄信息。
cat ~/.docker/config.json
輸出以下信息說明登陸成功
{
"auths": {
"https://index.docker.io/v1/": {},
"registry.cn-hangzhou.aliyuncs.com": {}
}
說明:我這里登陸了官方的,也登陸了鏡像加速器。如果您要下載公共倉庫下的鏡像,不登陸鏡像加速器也是可以下載的。但是如果要推送到鏡像倉庫,那么會報客戶端未授權。
2、拉取(pull)
這個很像git,在git的客戶端一般是通過git pull來拉取代碼,而這里是通過 docker pull來拉取鏡像。
拉取公有倉庫鏡像
docker pull helloworld
拉取私有倉庫鏡像
docker pull registry.cn-hangzhou.aliyuncs.com/鏡像名字
3、查看已下載的鏡像
通過docker images
來查看本地下載好的鏡像。
4、上傳鏡像
鏡像在本地環境構建或是打包好之后,就可以上傳到 Registry。Registry表示地址,官網默認不用輸入。
docker push registry.cn-hangzhou.aliyuncs.com/用戶名/鏡像名:版本號
5、啟動一個容器
運行helloworld項目 官網鏡像:
docker run helloworld
說明,如果運行一個不存在的鏡像,會自動從官網拉取。
加速器鏡像。
docker run registry.cn-hangzhou.aliyuncs.com/鏡像名字
我們先體驗一個簡單的應用。后續我們再分別講解如何通過Docker來安裝Nginx,Mysql,Redis等應用。再深入一點Docker Compose,DockerFile等。預覽主題:
Docker 技術系列之安裝Docker for Mac
Docker 技術系列之安裝單機版數據庫Mysql
Docker 技術系列之安裝服務器Nginx
Docker 技術系列之安裝單機版本Redis
Docker 技術系列之安裝Web服務器Tomcat
Docker 技術系列之安裝Docker Compose
Docker 技術系列之DockerFile體驗
Docker 技術系列之安裝文檔數據庫MongoDB
Docker 技術系列之安裝關系數據庫oracle
Docker 技術系列之安裝Node.js
Docker 技術系列之安裝Web服務器Jetty
Docker 技術系列之安裝集群版本Redis
Docker 技術系列之安裝集群版數據庫Mysql
后續再補充企業級別的Docker+Jenkins+Git實戰,同時添加其他的主題。
下面是我的電腦安裝的一些應用。
了解更多
第一章 感受mac之美-換一種方式用電腦,開啟新歷程第二章 感受Mac 之美-驚艷從Mac 外設開始,一周后的使用感受
第三章 感受Mac之美-萬里挑一的裝機必備軟件
第四章 感受Mac之美-效率提高從操作快捷鍵開始
第五章 Mac系統軟件-安裝Java Web開發環境基本軟件