您好,登錄后才能下訂單哦!
小編給大家分享一下Linux系統(tǒng)如何安裝docker,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
1.鏡像
docker鏡像是一個(gè)特殊的文件系統(tǒng),能夠提供容器運(yùn)行時(shí)所需的資源。如果接觸過(guò)dockerfile的同學(xué)應(yīng)該知道,我們構(gòu)建鏡像時(shí)都會(huì)選擇一個(gè)基礎(chǔ)鏡像(沒(méi)接觸過(guò)別擔(dān)心下面會(huì)講),這說(shuō)明docker鏡像是一層層進(jìn)行構(gòu)建的,一個(gè)鏡像往往由多層文件系統(tǒng)組成。
2.容器
鏡像是靜態(tài)的,鏡像運(yùn)行起來(lái)的時(shí)候就變成了容器。容器相當(dāng)于一個(gè)完整的操作系統(tǒng),他可以有自己的文件系統(tǒng),自己的網(wǎng)絡(luò)配置。假如我們使用一個(gè)mysql容器進(jìn)行存儲(chǔ)數(shù)據(jù),這時(shí)數(shù)據(jù)會(huì)存儲(chǔ)在當(dāng)前容器的存儲(chǔ)層,存儲(chǔ)層的生命周期和容器一樣,容器消亡時(shí),其存儲(chǔ)層也不在了,所以我們?cè)谑褂眠@種需要存儲(chǔ)數(shù)據(jù)的容器時(shí),往往都需要指定數(shù)據(jù)卷Volume(掛載一個(gè)宿主機(jī)的文件目錄),這樣即使容器刪除,數(shù)據(jù)也不會(huì)消失。
3.倉(cāng)庫(kù)
顧名思義,docker倉(cāng)庫(kù)即為存儲(chǔ)鏡像的地方,我們可以將鏡像上傳至倉(cāng)庫(kù),也可以從倉(cāng)庫(kù)下載鏡像。這個(gè)比較簡(jiǎn)單,沒(méi)什么好說(shuō)的。
以下內(nèi)容根據(jù)
修改而來(lái)。舊的Docker版本可能叫做docker,docker-engine或者
,如果你過(guò)去安裝過(guò) docker,先刪掉:sudo apt-get remove docker docker-engine docker.io
首先安裝依賴:
sudo apt-get install apt-transport-https ca-certificates curl gnupg2 software-properties-common
根據(jù)你的發(fā)行版,下面的內(nèi)容有所不同。你使用的發(fā)行版: Debian Ubuntu
信任 Docker 的 GPG 公鑰:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
對(duì)于 amd64 架構(gòu)的計(jì)算機(jī),添加軟件倉(cāng)庫(kù)(該部分將docker官方倉(cāng)庫(kù)地址修改為清華大學(xué)開源軟件鏡像站地址以提高下載速度):
sudo add-apt-repository \ "deb [arch=amd64] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu \ $(lsb_release -cs) \ stable"
如果你是樹莓派或其它ARM架構(gòu)計(jì)算機(jī),請(qǐng)運(yùn)行:
echo "deb [arch=armhf] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu \ $(lsb_release -cs) stable" | \ sudo tee /etc/apt/sources.list.d/docker.list
最后安裝
sudo apt-get update sudo apt-get install docker-ce
以下內(nèi)容根據(jù)
修改而來(lái)。如果你之前安裝過(guò) docker,請(qǐng)先刪掉
sudo yum remove docker docker-common docker-selinux docker-engine
安裝一些依賴
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
根據(jù)你的發(fā)行版下載repo文件: CentOS/RHEL Fedora
wget -O /etc/yum.repos.d/docker-ce.repo https://download.docker.com/linux/centos/docker-ce.repo
把軟件倉(cāng)庫(kù)地址替換為 TUNA:
sudo sed -i 's+download.docker.com+mirrors.tuna.tsinghua.edu.cn/docker-ce+' /etc/yum.repos.d/docker-ce.repo
最后安裝:
sudo yum makecache fast sudo yum install docker-ce
默認(rèn)情況下,docker只能在root用戶權(quán)限下運(yùn)行,非root用戶需要使用sudo才能運(yùn)行。最新版的Docker通過(guò)添加docker用戶組來(lái)實(shí)現(xiàn)非root權(quán)限用戶操作docker的功能。需要注意的是,docker用戶組實(shí)質(zhì)上和root用戶是一樣的,因此其對(duì)系統(tǒng)安全的影響也是一樣的。要使用非root用戶管理docker。
首先創(chuàng)建 docker 用戶組:
sudo groupadd docker
然后將當(dāng)前用戶添加到 docker 用戶組中:
sudo usermod -aG docker $USER
注銷當(dāng)前用戶并重新登錄(或者重啟電腦)后,用戶即可被添加到 docker 用戶組中。在linux系統(tǒng)中,也可以通過(guò)以下命令快速激活 docker 用戶組。
newgrp docker
要確定上述操作是否生效,可在命令行運(yùn)行如下命令進(jìn)行測(cè)試,該命令會(huì)從docker官方下載 hello-world 鏡像并運(yùn)行:
docker run hello-world
如果在將當(dāng)前用戶添加到 docker 用戶組之前就使用 sudo 運(yùn)行過(guò)docker命令行,那么可能會(huì)提示如下錯(cuò)誤。
WARNING: Error loading config file: /home/user/.docker/config.json - stat /home/user/.docker/config.json: permission denied
該錯(cuò)誤告訴你你的 ~/.docker/ 文件夾創(chuàng)建的權(quán)限不正確。這個(gè)問(wèn)題可以通過(guò)移除個(gè)人目錄下的 .docker 文件夾并由系統(tǒng)重新創(chuàng)建生成,或者修改該文件夾所有者權(quán)限來(lái)解決。
$ sudo chown "$USER":"$USER" /home/"$USER"/.docker -R $ sudo chmod g+rwx "$HOME/.docker" -R
在現(xiàn)代的大部分Linux系統(tǒng)發(fā)行版中,都通過(guò) systemd 來(lái)管理隨系統(tǒng)開機(jī)自啟動(dòng)的服務(wù)(在 Ubuntu14.04 或更低的版本下使用 upstart ) , 通過(guò)以下命令使用 systemd 來(lái)啟動(dòng)或者禁用docker開機(jī)自啟動(dòng)功能。
sudo systemctl enable docker //啟用docker服務(wù) sudo systemctl disable docker //禁用docker服務(wù)
Docker 通過(guò) upstart 服務(wù)自動(dòng)配置了開機(jī)啟動(dòng)的功能,要禁用該功能,可以使用以下命令:
echo manual | sudo tee /etc/init/docker.override
以上是“Linux系統(tǒng)如何安裝docker”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。