Docker 入門及安裝

2022-09-06 09:00:12 字數 3267 閱讀 1785

docker是用go語言開發的應用容器引擎,基於容器化,沙箱機制的應用部署技術。可適用於自動化測試、打包,持續整合和發布應用程式等場景。

值得注意的是,docker現已改名為moby。

docker基於容器化,沙箱機制,可使你用較少的命令和指令碼快速部署應用。一次構建,多處移植使用。再配合shell等指令碼語言,可實現指令碼化一鍵部署。

另外,docker大部分的工作都是依賴命令來執行的,簡單易上手。

如火如荼的docker,現已被很多大公司所採用。同時docker也成為了實現serverless(無伺服器架構)服務的基礎架構。包括阿里雲,亞馬遜在內的雲計算服務商都採用了docker來打造serverless服務平台。

如此同時,基於docker的微服務架構也如火如荼地出現。

由此可見,docker容器技術的重要性非同一般。

docker 讓開發者可以打包他們的應用以及依賴包到乙個可移植的容器中,然後發布到任何流行的 linux 機器上,便可以實現虛擬化。docker改變了虛擬化的方式,使開發者可以直接將自己的成果放入docker中進行管理。方便快捷已經是 docker的最大優勢,過去需要用數天乃至數週的 任務,在docker容器的處理下,只需要數秒就能完成。

一方面,雲計算時代到來,使開發者不必為了追求效果而配置高額的硬體,docker 改變了高效能必然**格的思維定勢。docker 與雲的結合,讓雲空間得到更充分的利用。不僅解決了硬體管理的問題,也改變了虛擬化的方式。

docker daemon 守護程序

用redis 舉例來說 client 就相當於 redis-cli 的客戶端,host 是 redis 的伺服器端,而 registry 相當於 github。

用 j**a 來說 image 相當於 class 檔案,containers 相當於例項

docker映象是使用dockerfile指令碼,將你的應用以及應用的依賴包構建而成的乙個應用包,它通常帶有該應用的啟動命令。而這些命令會在容器啟動時被執行,也就是說你的應用在啟動容器時被啟動。映象時基於聯合(union)檔案系統的一種層式的結構,由一系列指令一步一步構建出來。

容器是使用 docker run --name 容器名 映象 命令建立的,獨立於宿主機(伺服器)的沙箱,也可以理解為乙個帶有特殊結構的盒子,它在建立時會自動執行映象自帶的一些指令,從而實現該應用的執行。

狹隘地講,容器的主要作用就在於給映象提供執行空間和環境,並執行映象的指令。

顧名思義,倉庫是用來存東西的,但不是存容器,而是儲存docker映象。你可以把你的docker映象通過push命令推送到docker倉庫,然後就可以在任何能使用docker命令的地方通過pull命令把這個映象拉取下來。有公共倉庫和私有倉庫兩種。

docker是沙箱機制,容器化部署技術,它主要作用在於通過執行容器來實現應用部署,而容器則基於映象執行。因此,首先要有映象,有了映象才能基於映象建立容器,才能把映象儲存在倉庫。

於是可以這麼理解,映象是基礎,容器是映象使用者,倉庫是映象的管理員。容器和倉庫都是圍繞著映象來運作的,是對映象的管理和使用。

映象是docker 生命週期中的構建或打包階段,容器則是啟動或者執行階段。

docker 要求 centos 系統的核心版本高於3.10 。通過 uname -r 命令檢視核心版本

$ uname -r

2. 使用 root 許可權登入 centos,確保 yum 包更新到最新

$ yum -y update

3.解除安裝舊版本的docker,如果有安裝過的

$ yum remove docker docker-common docker-selinux docer-engine

4.安裝需要的軟體包

5.設定 yum 源

6.檢視所有倉庫的 docker 版本(使用社群版)

7.安裝 docker

$ sudo yum install docker re # repo中預設只開啟 stable 倉庫,這裡安裝的是最穩定版本

$ sudo yum install # sudo yum install docker-ce-18.03.1.ce

報錯 問題

1:執行yum clean all 清除快取目錄下的軟體包及舊的headers;

2:接著執行 yum list 重新列出所有已經安裝和可以安裝的軟體包;

3:重新執行上述命令,發現yum編譯成功;

注意:如果執行 yum list 報錯,那就檢查一下yum倉庫是否有問題;並清除/etc/yum.repos.d/下多餘.repo檔案!

正確安裝後

8.啟動並加入開機啟動

$ systemctl start docker

$ systemctl enable docker

9.驗證是否安裝成功(有client 和 service)

10.檢視是否執行

$ ps -ef | grep docker

10.1 檢視docker 程式是否正常工作

# docker info

返回所有容器和映象得數量、使用得執行驅動和儲存驅動,以及docker 得配置

## 映象加速器

使用 阿里雲的映象加速器。

您可以通過修改daemon配置檔案/etc/docker/daemon.json來使用加速器

sudo mkdir -p /etc/docker

sudo tee /etc/docker/daemon.json <

eofsudo systemctl daemon-reload

sudo systemctl restart docker

Kong入門及docker安裝

一.kong介紹 kong 是乙個雲原生,高效,可擴充套件的分布式 api 閘道器。自 2015 年在 github 開源後,廣泛受到關注,目前已收穫 1.9w 的 star,其核心價值在於高效能和可擴充套件性。概念術語 upstream 是對上游伺服器的抽象 target 代表了乙個物理服務,是 ...

yum安裝Docker及入門使用

一 安裝 1 配置yum源 vim etc yum.repos.d docker.repo dockerrepo name docker repository baseurl enabled 1 gpgcheck 1 gpgkey 2 通過yum安裝 yum install docker engin...

docker入門 docker安裝

docker入門 docker安裝 ubuntu 安裝 curl ssl sh 官方安裝指令碼自動安裝 systemctl enable docker systemctl is enabled docker 開機自啟動 sudo usermod ag docker npoulton 根據自己的使用者...