Linux 学习 -- 容器技术
Linux 學(xué)習(xí) – 容器技術(shù)
- 容器基礎(chǔ)概述
- 容器部署
一、容器基礎(chǔ)概述
容器(Container) :
定義:指的是針對應(yīng)用所需的運(yùn)行環(huán)境資源(依賴庫/目錄/網(wǎng)絡(luò)/用戶……等)進(jìn)行整體封裝的技術(shù)。
特點(diǎn):封裝好的鏡像相比虛擬機(jī)的粒度要更細(xì),可移植性強(qiáng)。每個(gè)容器采用沙箱機(jī)制,相互隔離。容器現(xiàn)在只支持Linux操作系統(tǒng)。
虛擬化和容器的對比:
相同點(diǎn):都是對用戶提供某種服務(wù)。
不同點(diǎn):
1、虛擬化是在虛擬化平臺上安裝虛擬機(jī),然后在虛擬機(jī)上 安裝不同的操作系統(tǒng),進(jìn)行獨(dú)立的配置,提供服務(wù)。
2、容器技術(shù)不需要虛擬化那樣麻煩,提供某種服務(wù)只需要安裝相應(yīng)的軟件包、依賴包和函數(shù)庫,不需要操作系統(tǒng),底層和Linux共用,占用的內(nèi)存更小。
紅帽中的容器:
Podman (podmanager) :
是一個(gè)功能齊全的容器引擎,它是一個(gè)簡單的無需守護(hù)的用來管理鏡像、容器的工具。Podman提供了一個(gè)與Docker CLI兼容的操作方式,簡單地說: alias docker=podman。大多數(shù)Podman命令都可以普通用戶運(yùn)行,而無需其他額外的權(quán)限。類似容器的豪華版,功能豐富。
名字Podman的由來: Pod也叫做豆莢,豆莢里面有很多豆子,每一個(gè)豆子就是一個(gè)容器,因此也叫做豆莢管理器。
Container(容器)
每一個(gè)容器相當(dāng)于一個(gè)運(yùn)行中的袖珍版的虛擬機(jī)
每一個(gè)容器相當(dāng)于一個(gè)運(yùn)行中的豪華版的軟件包
倉庫=》鏡像=》容器的關(guān)系:
倉庫:用來提供/存放鏡像,有官方倉庫(比如紅帽的registry.redhat.io、Docker的dacker lo). 或自建私有倉庫。
鏡像:針對某個(gè)虛擬機(jī)或某個(gè)應(yīng)用封裝的獨(dú)立環(huán)境,作為容器的模板。
容像:基下某個(gè)H接后員B9性:內(nèi)學(xué)干運(yùn)行韭廷例。
倉庫服務(wù)器(提供鏡像) ==》鏡像(靜止的,可以存儲的 ) ==》容器(動態(tài)的,運(yùn)行中)
registry == image == container
常見的倉庫服務(wù)器:
registry.access.redhat.com(紅帽官方)
docker.io(Docker官方的)
私有倉庫等
圖解鏡像:
二、Docker部署
1、參考Docker的官網(wǎng)進(jìn)行安裝。
官網(wǎng)地址:https://docs.docker.com/engine/install/centos/
2、安裝步驟
2.1:檢查操作系統(tǒng)版本是否支持:
cat /etc/centos-release //CentOS操作系統(tǒng)。
2.2:卸載舊版本
命令: sudo yum remove docker
docker-client
docker-client-latest
docker-common
docker-latest
docker-latest-logrotate
docker-logrotate
docker-engine
2.3:yum安裝gcc相關(guān)
首先虛擬機(jī)可以訪問外網(wǎng)。
然后使用命令: yum -y install gcc
再使用命令: yum -y install gcc-c++
2.4:安裝所需軟件包
參考官網(wǎng)
命令如下:yum install -y yum-utils
2.5:設(shè)置stable鏡像倉庫
安裝stable鏡像倉庫假如使用官網(wǎng)的外網(wǎng)進(jìn)行下載,大多數(shù)是超時(shí)。
所以使用國內(nèi)的鏡像倉庫。
這里使用阿里云的:命令如下
yum -config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
2.6:更新yum軟件包索引
命令: yum makecache fast
可以加快yum安裝速度。
2.7:安裝DOCKER CE
yum -y install docker-ce docker-ce-cli containerd.io docker-compose-plugin
2.8:啟動docker
systemctl start docker
沒有報(bào)錯(cuò)就表示安裝好了。
2.9:測試
1、可以 使用 docker version,查看當(dāng)前docker的版本。
2、使用 docker run hello-world 測試,發(fā)現(xiàn)失敗,因?yàn)闆]有hello-world的鏡像,需要從遠(yuǎn)程倉庫中拉取。
當(dāng)再次執(zhí)行docker run hello-world 的時(shí)候,就會出現(xiàn)Hello from docker.
恭喜你,安裝完成了!
卸載Docker:
systemctl stop docker //停止docker服務(wù)
yum remove docker-ce docker-ce-cil containerd.io
rm -rf /var/lib/docker //移除庫文件等。
rm -rf /var/lib/containerd
總結(jié)
以上是生活随笔為你收集整理的Linux 学习 -- 容器技术的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 通过键盘输入一串小写字母(a~z)组成的
- 下一篇: 操作系统入门详解以及Linux介绍