終于要進入到Docker技術(shù)系列了,感謝大家的持續(xù)關(guān)注。
為什么要選擇Docker?因為Docker 輕巧快速,提供了可行、經(jīng)濟、高效的替代方案。舉個例子,安裝Nginx,Mysql,Redis等常用的開發(fā)軟件,一句命令就搞定了。不僅為我們開發(fā),測試,部署提供方便,也能節(jié)省時間去處理更重要的事情。
那我們下面來了解下Docker是什么?
一、 Docker的基本概念
Docker 包括三個基本概念:
-
鏡像(Image):相當(dāng)于是一個 root 文件系統(tǒng)。比如官方鏡像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系統(tǒng)的 root 文件系統(tǒng)。比如說nginx,mysql,redis等軟件可以做成一個鏡像。 -
容器(Container):容器可以被創(chuàng)建、啟動、停止、刪除、暫停等。 -
倉庫(Repository):一個代碼控制中心,用來保存鏡像。DockerHub 是一個由 Docker 公司運行和管理的基于云的存儲庫。它是一個在線存儲庫,Docker 鏡像可以由其他用戶發(fā)布和使用。有兩種庫:公共存儲庫和私有存儲庫。如果你是一家公司,你可以在你自己的組織內(nèi)擁有一個私有存儲庫,而公共鏡像可以被任何人使用。
剛開始使用,盡可能的會使用,了解其解決什么痛點,隨著我們使用的深入,逐步了解其原理和結(jié)構(gòu)是如何實現(xiàn)的。
二、Docker 安裝與配置
1、下載與安裝Docker Desktop for Mac
在Docker hub 網(wǎng)站上搜索
Docker desktop for Mac
,如下,點擊get docker 即可自動完成docker軟件下載。
2、第三方鏡像地址下載
官網(wǎng)下載比較慢,也可以通過國內(nèi)鏡像下載。地址如下:
對于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/
下載完成后,打開下載文件目錄,找到對應(yīng)的安裝包。雙擊啟動安裝程序,拖動到應(yīng)用程序文件夾開始啟動安裝過程。
3、安裝可能會出現(xiàn)的問題。
注意:啟動安裝后,提示來源不可靠,是否安裝,點擊確定安裝。特別注意這個地方,第一個彈出框輸入的是mac管理密碼,第二個輸入的才是docker的賬號密碼。驗證后,繼續(xù)安裝。
4、驗證docker是否安裝成功
輸入以下命令,
docker version
如果有輸出版本的,那么恭喜你安裝成功。
三、Docker 鏡像加速器
1、為什么要配置加速器?
使用 Docker 時需要首先下載一個官方鏡像,例如 mysql、wordpress。然而由于網(wǎng)絡(luò)原因,下載一個 Docker 官方鏡像可能會需要很長的時間,甚至下載失敗。
2、如何獲取加速器?
這里我們使用阿里云docker鏡像加速器:阿里云的docker鏡像加速器需要注冊賬號,每個人都有自己唯一的地址。
https://dev.aliyun.com/search.html
3、如何配置加速器?
Docker for Mac的用戶,可以參考以下配置步驟:
右鍵點擊桌面頂欄的 docker 圖標,選擇 Preferences ,在 Docker Engine 標簽下的 Registry mirrors 列表中將鏡像地址的數(shù)組:
"registry-mirrors": ["https://你的前綴地址.mirror.aliyuncs.com"]
點擊 Apply & Restart按鈕,等待Docker重啟并應(yīng)用配置的鏡像加速器。
4、檢驗加速器是否配置成功
執(zhí)行 docker info 命令,返回結(jié)果中包含以下內(nèi)容,則說明配置成功。
https://你的前綴地址.mirror.aliyuncs.com/
四、Docker 命令學(xué)習(xí)
安裝完了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客戶端登錄時使用的用戶名為阿里云賬戶全名,密碼是在阿里云設(shè)置的密碼。
通過查看 config.json 文件,確認您的登錄信息。
cat ~/.docker/config.json
輸出以下信息說明登陸成功
{ "auths": { "https://index.docker.io/v1/": {}, "registry.cn-hangzhou.aliyuncs.com": {} }
說明:我這里登陸了官方的,也登陸了鏡像加速器。如果您要下載公共倉庫下的鏡像,不登陸鏡像加速器也是可以下載的。但是如果要推送到鏡像倉庫,那么會報客戶端未授權(quán)。
2、拉?。╬ull)
這個很像git,在git的客戶端一般是通過git pull來拉取代碼,而這里是通過 docker pull來拉取鏡像。
拉取公有倉庫鏡像
docker pull helloworld
拉取私有倉庫鏡像
docker pull registry.cn-hangzhou.aliyuncs.com/鏡像名字
3、查看已下載的鏡像
通過docker images來查看本地下載好的鏡像。
4、上傳鏡像
鏡像在本地環(huán)境構(gòu)建或是打包好之后,就可以上傳到 Registry。Registry表示地址,官網(wǎng)默認不用輸入。
docker push registry.cn-hangzhou.aliyuncs.com/用戶名/鏡像名:版本號
5、啟動一個容器
運行helloworld項目 官網(wǎng)鏡像:
docker run helloworld
說明,如果運行一個不存在的鏡像,會自動從官網(wǎng)拉取。
加速器鏡像。
docker run registry.cn-hangzhou.aliyuncs.com/鏡像名字
我們先體驗一個簡單的應(yīng)用。后續(xù)我們再分別講解如何通過Docker來安裝Nginx,Mysql,Redis等應(yīng)用。再深入一點Docker Compose,DockerFile等。預(yù)覽主題:
Docker 技術(shù)系列之安裝Docker for MacDocker 技術(shù)系列之安裝單機版數(shù)據(jù)庫MysqlDocker 技術(shù)系列之安裝服務(wù)器NginxDocker 技術(shù)系列之安裝單機版本RedisDocker 技術(shù)系列之安裝Web服務(wù)器TomcatDocker 技術(shù)系列之安裝Docker ComposeDocker 技術(shù)系列之DockerFile體驗Docker 技術(shù)系列之安裝文檔數(shù)據(jù)庫MongoDBDocker 技術(shù)系列之安裝關(guān)系數(shù)據(jù)庫oracleDocker 技術(shù)系列之安裝Node.jsDocker 技術(shù)系列之安裝Web服務(wù)器JettyDocker 技術(shù)系列之安裝集群版本RedisDocker 技術(shù)系列之安裝集群版數(shù)據(jù)庫Mysql
后續(xù)再補充企業(yè)級別的Docker+Jenkins+Git實戰(zhàn),同時添加其他的主題。
下面是我的電腦安裝的一些應(yīng)用。
了解更多
第一章 感受mac之美-換一種方式用電腦,開啟新歷程
第二章 感受Mac 之美-驚艷從Mac 外設(shè)開始,一周后的使用感受
第三章 感受Mac之美-萬里挑一的裝機必備軟件
第四章 感受Mac之美-效率提高從操作快捷鍵開始
第五章 Mac系統(tǒng)軟件-安裝Java Web開發(fā)環(huán)境基本軟件