Docker 安裝及配置鏡像加速的實(shí)現(xiàn)
隨著 Docker 的飛速發(fā)展,企業(yè)級(jí)功能的上線,更好的服務(wù)意味著需要支付一定的費(fèi)用,目前 Docker 被分為兩個(gè)版本:
community-edition 社區(qū)版 enterprise-edition 企業(yè)版Docker 企業(yè)版(EE)專為企業(yè)開發(fā)和 IT 團(tuán)隊(duì)設(shè)計(jì),可在大規(guī)模生產(chǎn)中構(gòu)建,運(yùn)送和運(yùn)行關(guān)鍵業(yè)務(wù)應(yīng)用程序。Docker EE 集成,認(rèn)證和支持,為企業(yè)提供業(yè)界最安全的容器平臺(tái),實(shí)現(xiàn)所有應(yīng)用程序的現(xiàn)代化。作為一個(gè)以應(yīng)用為中心的平臺(tái),Docker EE 旨在加速和保護(hù)整個(gè)軟件供應(yīng)鏈,從開發(fā)到在任何基礎(chǔ)設(shè)施上運(yùn)行的生產(chǎn)。
我們學(xué)習(xí) Docker 使用 CE 社區(qū)版即可。
Docker 支持 Mac Windows Linux,本文使用 Linux 環(huán)境教大家如何基于 CentOS 安裝 Docker 及配置鏡像加速。
官方文檔:https://docs.docker.com/
系統(tǒng)要求官網(wǎng)提示如果要安裝 Docker Engine,您需要一個(gè) CentOS 7 以及以上的穩(wěn)定版本。
卸載舊版本較舊的 Docker 版本為 docker 或 docker-engine。 如果已安裝這些程序,請(qǐng)卸載它們以及相關(guān)的依賴項(xiàng)。
sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine
Docker 鏡像、容器、數(shù)據(jù)卷和網(wǎng)絡(luò)數(shù)據(jù)都保存在 /var/lib/docker/。新的 Docker 引擎包現(xiàn)在為 Docker-ce。
設(shè)置 yum 源安裝 yum-utils 軟件包(提供了 yum-config-manager 程序)并設(shè)置穩(wěn)定的 yum 源方便下載 Docker Engine。
# 安裝 yum-utilssudo yum install -y yum-utils# 設(shè)置 yum 源為阿里云方便下載 Docker Enginesudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repoDocker 安裝
安裝最新版本的 Docker Engine 和容器。
sudo yum install docker-ce docker-ce-cli containerd.io
安裝過(guò)程中如果提示您接受 GPG 密鑰,請(qǐng)驗(yàn)證指紋是否與 060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35 匹配,如果是,請(qǐng)接受。
Docker 的啟動(dòng)與停止# 啟動(dòng) dockersudo systemctl start docker# 停止 dockersudo systemctl stop docker# 重啟 dockersudo systemctl restart docker# 設(shè)置開機(jī)啟動(dòng)sudo systemctl enable docker# 查看 docker 狀態(tài)sudo systemctl status docker# 查看 docker 內(nèi)容器的運(yùn)行狀態(tài)sudo docker stats# 查看 docker 概要信息sudo docker info# 查看 docker 幫助文檔sudo docker --help安裝校驗(yàn)
[root@localhost ~]# docker -vDocker version 19.03.12, build 48a66213fe[root@localhost ~]# docker versionClient: Docker Engine - Community Version: 19.03.12 API version: 1.40 Go version: go1.13.10 Git commit: 48a66213fe Built: Mon Jun 22 15:46:54 2020 OS/Arch: linux/amd64 Experimental: falseServer: Docker Engine - Community Engine: Version: 19.03.12 API version: 1.40 (minimum version 1.12) Go version: go1.13.10 Git commit: 48a66213fe Built: Mon Jun 22 15:45:28 2020 OS/Arch: linux/amd64 Experimental: false containerd: Version: 1.2.13 GitCommit: 7ad184331fa3e55e52b890ea95e65ba581ae3429 runc: Version: 1.0.0-rc10 GitCommit: dc9208a3303feef5b3839f4323d9beb36df0a9dd docker-init: Version: 0.18.0 GitCommit: fec3683配置鏡像加速
Docker 從 Docker Hub 拉取鏡像,因?yàn)槭菑膰?guó)外獲取,所以速度較慢,會(huì)出現(xiàn)以下情況:
[root@localhost ~]# docker run hello-worldUnable to find image ’hello-world:latest’ locallydocker: Error response from daemon: Get https://registry-1.docker.io/v2/library/hello-world/manifests/latest: net/http: TLS handshake timeout.See ’docker run --help’.
可以通過(guò)配置國(guó)內(nèi)鏡像源的方式,從國(guó)內(nèi)獲取鏡像,提高拉取速度。這里介紹中國(guó)科學(xué)技術(shù)大學(xué)(LUG@USTC)的開源鏡像:https://docker.mirrors.ustc.edu.cn 和網(wǎng)易的開源鏡像:http://hub-mirror.c.163.com
USTC 是老牌的 Linux 鏡像服務(wù)提供者了,USTC 的 Docker 鏡像加速服務(wù)速度很快。USTC 和網(wǎng)易的優(yōu)勢(shì)之一就是不需要注冊(cè),屬于真正的公共服務(wù)。(也可以使用阿里等其他服務(wù)商的鏡像加速服務(wù))
編輯文件 daemon.json 。
vi /etc/docker/daemon.json
在文件中輸入以下內(nèi)容并保存。
{ 'registry-mirrors': ['http://hub-mirror.c.163.com', 'https://docker.mirrors.ustc.edu.cn']}
重新加載配置信息及重啟 Docker 服務(wù)。
# 重新加載某個(gè)服務(wù)的配置文件sudo systemctl daemon-reload# 重新啟動(dòng) dockersudo systemctl restart dockerhello-world
通過(guò)運(yùn)行 hello-world 鏡像來(lái)驗(yàn)證 Docker Engine 是否已正確安裝。
[root@localhost ~]# docker run hello-worldUnable to find image ’hello-world:latest’ locally # 本地找不到 hello-world 鏡像latest: Pulling from library/hello-world # 拉取最新版本的 hello-world 鏡像0e03bdcc26d7: Pull complete Digest: sha256:49a1c8800c94df04e9658809b006fd8a686cab8028d33cfba2cc049724254202Status: Downloaded newer image for hello-world:latest# 看到此消息表示您已正常安裝。Hello from Docker!This message shows that your installation appears to be working correctly.To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the 'hello-world' image from the Docker Hub. (amd64) 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal.To try something more ambitious, you can run an Ubuntu container with: $ docker run -it ubuntu bashShare images, automate workflows, and more with a free Docker ID: https://hub.docker.com/For more examples and ideas, visit: https://docs.docker.com/get-started/
docker run hello-world 命令執(zhí)行流程圖如下。
通過(guò)以上步驟大家已完成 Docker 安裝的所有工作,接下來(lái)通過(guò)學(xué)習(xí)鏡像命令和容器命令更加熟悉 Docker 的使用。
到此這篇關(guān)于Docker 安裝及配置鏡像加速的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Docker 安裝及鏡像加速內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. 前端從瀏覽器的渲染到性能優(yōu)化2. 讀大數(shù)據(jù)量的XML文件的讀取問(wèn)題3. 解析原生JS getComputedStyle4. css代碼優(yōu)化的12個(gè)技巧5. PHP循環(huán)與分支知識(shí)點(diǎn)梳理6. ASP基礎(chǔ)入門第三篇(ASP腳本基礎(chǔ))7. 無(wú)線標(biāo)記語(yǔ)言(WML)基礎(chǔ)之WMLScript 基礎(chǔ)第1/2頁(yè)8. ASP刪除img標(biāo)簽的style屬性只保留src的正則函數(shù)9. 利用CSS3新特性創(chuàng)建透明邊框三角10. ASP實(shí)現(xiàn)加法驗(yàn)證碼
