目錄
一、什么是Docker
二、特點
三、Docker與虛擬機技術(shù)的區(qū)別
四、Docker的核心概念
Docker倉庫與倉庫注冊服務(wù)器的區(qū)別
五、CentOS7在線安裝Docker
安裝配置
卸載?
一、什么是Docker
Docker是一個開源的容器化平臺,用于打包、部署和運行應(yīng)用程序。它利用操作系統(tǒng)級別的虛擬化技術(shù),可以將應(yīng)用程序及其依賴項打包為一個獨立的容器,使其可以在任何環(huán)境中運行。
可以在不同的操作系統(tǒng)上運行,包括Windows、Linux和Mac。每個容器都是一個獨立的運行實例,具有自己的文件系統(tǒng)、進程和網(wǎng)絡(luò)棧,但與宿主機和其他容器相互隔離。這種隔離性可以確保容器之間互不干擾,提供了更高的安全性。
Docker鏡像是一個只讀的模板,包含了運行應(yīng)用程序所需的所有文件和配置。可以通過定義Dockerfile文件來創(chuàng)建鏡像,然后使用Docker命令構(gòu)建和管理這些鏡像。
Docker還提供了一套強大的工具和功能,用于管理和監(jiān)控容器的生命周期??梢允褂肈ocker命令來啟動、停止、重啟和刪除容器,以及查看容器的日志和狀態(tài)。Docker還支持容器編排和集群管理,可以在多個主機上部署和管理容器集群,提高應(yīng)用程序的可伸縮性和高可用性。
總的來說,Docker提供了一種簡單、快速和可靠的方法來打包、部署和運行應(yīng)用程序??梢蕴岣唛_發(fā)效率、加快應(yīng)用程序的交付速度,并提供一致和可重復(fù)的開發(fā)、測試和生產(chǎn)環(huán)境。
二、特點
- 輕量級:Docker是輕量級的,相對于傳統(tǒng)的虛擬機,它們需要更少的資源,可以更快地啟動和停止。
- 可移植性:Docker容器可以在不同的操作系統(tǒng)和云平臺上運行,從而實現(xiàn)了應(yīng)用程序的可移植性。
-
簡單易用:Docker提供了簡單易用的命令行工具和
API
,使得開發(fā)人員可以輕松地構(gòu)建、打包、運輸和部署應(yīng)用程序。 - 隔離性:Docker容器提供了隔離性,使得不同的容器之間相互獨立,從而避免了應(yīng)用程序之間的沖突和干擾。
- 可擴展性:Docker容器可以很容易地進行擴展,從而滿足了應(yīng)用程序的需求。
- 安全性:Docker容器提供了安全的環(huán)境,使得應(yīng)用程序可以在安全的環(huán)境中運行,從而保障了應(yīng)用程序的安全性。
三、Docker與虛擬機技術(shù)的區(qū)別
- 虛擬化級別:傳統(tǒng)的虛擬機技術(shù)通過在物理主機上運行一個完整的操作系統(tǒng)來實現(xiàn)虛擬化。每個虛擬機都有自己的內(nèi)核、操作系統(tǒng)和應(yīng)用程序,它們之間是完全獨立的。而Docker使用了操作系統(tǒng)級別的虛擬化技術(shù),將應(yīng)用程序及其依賴項打包為一個獨立的容器,容器共享宿主機的操作系統(tǒng)和內(nèi)核,因此更加輕量級和高效。
- 資源占用:傳統(tǒng)虛擬機技術(shù)需要為每個虛擬機分配一定的計算資源和內(nèi)存,并且每個虛擬機都需要運行一個完整的操作系統(tǒng),因此會占用較多的計算資源。而Docker容器是輕量級的,共享宿主機的操作系統(tǒng)和內(nèi)核,因此可以更高效地利用計算資源。
- 啟動速度:傳統(tǒng)虛擬機技術(shù)需要啟動一個完整的操作系統(tǒng),需要較長的啟動時間。而Docker容器是基于鏡像啟動的,啟動速度非常快,通常只需幾秒鐘即可啟動一個容器。
- 系統(tǒng)管理:傳統(tǒng)虛擬機技術(shù)需要單獨管理每個虛擬機的操作系統(tǒng)和應(yīng)用程序,需要進行獨立的更新、配置和維護。而Docker容器可以通過定義Dockerfile文件來創(chuàng)建鏡像,鏡像可以進行版本控制和共享,容器可以隨時啟動、停止和遷移,簡化了系統(tǒng)管理和維護的工作。
Docker相對于傳統(tǒng)的虛擬機技術(shù)更加輕量級、高效和靈活,可以提供更快的啟動速度和更高的資源利用率。它在容器化應(yīng)用程序方面提供了一種簡單、快速和可靠的解決方案,并在開發(fā)、測試和生產(chǎn)環(huán)境中提供了一致性和可重復(fù)性。
實際案例:以springcloud微服務(wù)為例
-
傳統(tǒng)虛擬化方式:7個服務(wù)部署需要7臺
Linux
服務(wù)器 -
Docker虛擬化方式:7個服務(wù)部署只需要1臺
Linux
服務(wù)器上安裝docker并運行7個容器
四、Docker的核心概念
?Docker大部分的操作都圍繞著它的核心概念: 鏡像、容器、倉庫、Dockerfile和服務(wù)。
-
鏡像(Image):鏡像是Docker的核心概念,它是一個只讀的模板,包含了運行應(yīng)用程序所需的所有文件和配置。鏡像可以用來創(chuàng)建容器。Docker鏡像可以通過Dockerfile文件定義,其中包含了構(gòu)建鏡像所需的指令和配置。
-
容器(Container):容器是從鏡像創(chuàng)建的運行實例。容器是一個獨立且可隔離的運行環(huán)境,包含了應(yīng)用程序、其依賴項和配置。容器可以啟動、停止、重啟和刪除。容器之間相互隔離,但可以與宿主機和其他容器進行通信。
-
倉庫(Registry):倉庫是用于存儲和共享Docker鏡像的地方。Docker Hub是最常用的公共倉庫,提供了大量的官方和社區(qū)維護的鏡像。除了公共倉庫外,還可以搭建私有倉庫,用于存儲和管理自己的鏡像。
-
Dockerfile:Dockerfile是用于定義Docker鏡像的文本文件。它包含了一系列的指令和配置,用于構(gòu)建和配置鏡像。通過編寫Dockerfile,開發(fā)人員可以定義應(yīng)用程序運行所需的環(huán)境、依賴項和配置,使得鏡像的構(gòu)建和管理更加簡單和可重復(fù)。
-
服務(wù)(Service):服務(wù)是用于在分布式環(huán)境中部署和管理容器的概念。通過定義服務(wù),可以在多個主機上運行和管理多個容器,實現(xiàn)高可用性和伸縮性。Dock
Docker倉庫與倉庫注冊服務(wù)器的區(qū)別
Docker倉庫 ( Repository )和倉庫注冊服務(wù)器 ( Registry )是Docker中相關(guān)的兩個概念,區(qū)別如下:
-
倉庫注冊服務(wù)器:倉庫注冊服務(wù)器是Docker倉庫的底層實現(xiàn),它負責(zé)存儲和管理Docker鏡像。每個倉庫注冊服務(wù)器都有一個唯一的地址,用于標識和訪問該倉庫。Docker Hub是一個公共的倉庫注冊服務(wù)器,也可以搭建私有的倉庫注冊服務(wù)器。搭建私有倉庫注冊服務(wù)器可以提供更好的安全性和控制,適用于組織內(nèi)部的鏡像管理和共享。
-
Docker倉庫:Docker倉庫是一個存儲和共享Docker鏡像的地方。它類似于軟件倉庫,允許用戶上傳、下載和管理Docker鏡像。在Docker中,默認使用的公共倉庫是Docker Hub,它包含了大量的官方和社區(qū)維護的鏡像供用戶使用。用戶可以通過Docker命令從Docker倉庫中拉取鏡像到本地,也可以將自己構(gòu)建的鏡像推送到倉庫中。
Docker倉庫是用戶可以訪問和使用的集中存儲和共享鏡像的平臺,而倉庫注冊服務(wù)器是底層實現(xiàn)這個倉庫的服務(wù)器。用戶可以從倉庫中拉取鏡像到本地使用,也可以將自己構(gòu)建的鏡像推送到倉庫中共享。公共倉庫注冊服務(wù)器是Docker Hub,也可以搭建私有的倉庫注冊服務(wù)器。
五、CentOS7在線安裝Docker
安裝配置
-
內(nèi)核版本信息檢查
uname -r
-
卸載可能存在的舊版本
yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-selinux \ docker-engine-selinux \ docker-engine
?注:舊版本的
docker
叫做docker
或者docker-engine
,如果有安裝,先卸載其以及其依賴,新版本的docker
叫做docker-ce
。
docker-ce
(社區(qū)版,免費)
docker-ee
(專業(yè)版,收費)
-
安裝必要的系統(tǒng)工具
yum install -y yum-utils device-mapper-persistent-data lvm2
安裝依賴軟件:
1. yum-utils提供yum-config-manager包,用來管理yum配置文件;
2. lv2和device-mapper-persistent-data為dockerdevicemapper存儲設(shè)備的必須依賴;
-
添加
docker-ce
安裝源yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
?默認開啟的是stable穩(wěn)定版?zhèn)}庫,如果想要安裝test測試版或者是邊緣版本可使用如下命令開啟相關(guān)模式。
# 邊緣版本
yum-config-manager --enable docker-ce-edge
# test測試版
yum-config-manager --enable docker-ce-test
關(guān)閉的話只需要將--enable
參數(shù)換成--disable
(可選)
-
更新yum緩存
yum makecache fast
-
安裝docker-CE
默認安裝的是最新版本的穩(wěn)定版。
yum -y install docker-ce
查看版本列表請使用如下命令:
yum list docker-ce --showduplicates | sort -r
如果要安裝特定版本的docker-CE請使用如下命令格式:
yum install docker-ce-<VERSION STRING>
-
配置加速器
國內(nèi)從Docker Hub
下載鏡像速度很慢,我們可以配置阿里云專屬加速器來解決。通過瀏覽器訪問并登陸:??阿里云-計算,為了無法計算的價值
登陸后,進入阿里云“控制臺”,搜索“容器鏡像服務(wù)”
進入容器鏡像服務(wù) ACR 后點擊管理控制臺 進入 容器鏡像服務(wù)
左側(cè)菜單“鏡像工具”,點擊鏡像加速器,如下: ?
將容器右邊的“加速器地址”復(fù)制下來即可。
修改docker相關(guān)配置,配置鏡像加速器,如下:
# 創(chuàng)建目錄
mkdir -p /etc/docker
# 配置鏡像加速器
tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://rhgi3sfn.mirror.aliyuncs.com"]
}
EOF
最后,重載docker服務(wù)并重啟。 ?
# 重載服務(wù)
systemctl daemon-reload
# 重啟服務(wù)
systemctl restart docker
-
驗證
運行第一個容器(經(jīng)典的hello world)。
docker run hello-world
輸入以上命令后,窗口有輸出,表示docker安裝成功 。
卸載?
移除Docker:
yum remove docker-ce
刪除Docker的安裝目錄:
rm -rf /var/lib/docker
驗證是否刪除成功:
docker info
-bash: cd: /usr/bin/docker: 不是目錄文章來源:http://www.zghlxwxcb.cn/news/detail-853616.html
我們可以看到已經(jīng)無法找到 docker 安裝目錄,證明卸載成功 。文章來源地址http://www.zghlxwxcb.cn/news/detail-853616.html
到了這里,關(guān)于Docker簡單介紹、特點、與虛擬機技術(shù)的區(qū)別、核心概念及在CentOS 7 中安裝卸載Docker的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!