CentOS 8.4安裝Docker的詳細(xì)教程
前言:
Docker 是一個(gè)用于開(kāi)發(fā)、傳送和運(yùn)行應(yīng)用程序的開(kāi)放平臺(tái)。Docker 使您能夠?qū)?yīng)用程序與基礎(chǔ)設(shè)施分開(kāi),以便您可以快速交付軟件。使用 Docker,您可以像管理應(yīng)用程序一樣管理基礎(chǔ)設(shè)施。通過(guò)利用 Docker 的快速交付、測(cè)試和部署代碼的方法,您可以顯著減少編寫(xiě)代碼和在生產(chǎn)中運(yùn)行代碼之間的延遲。為了讓開(kāi)發(fā)、部署、測(cè)試和分發(fā)變得更高效和輕松,讓我們把Docker安裝起來(lái)體驗(yàn)一下它的魅力所在吧!
系統(tǒng)要求:
- Docker 支持 64 位版本 CentOS 7/8,并且要求內(nèi)核版本不低于 3.10。
- 需要啟用centos-extrasrepository。在 CentOS 7 中這個(gè)倉(cāng)庫(kù)是默認(rèn)啟用的,如果之前有將其禁用,則需要重新啟用
- CentOS 7 滿(mǎn)足最低內(nèi)核的要求,但由于內(nèi)核版本比較低,部分功能(如
overlay2存儲(chǔ)層驅(qū)動(dòng))無(wú)法使用,并且部分功能可能不太穩(wěn)定。
安裝環(huán)境:
本文主要是在Liunx操作系統(tǒng)CentOS8.4中安裝Docker,我們安裝之前可以先查看自己的系統(tǒng)版本,使用命令:lsb_release -a 進(jìn)行查看(如下圖所示)。
注意:切勿在沒(méi)有配置 Docker YUM 源的情況下直接使用 yum 命令安裝 Docker.

卸載舊版本:
舊版本的Docker在CentOS中的包名為docker或者docker-engine。如果你之前的Linux CentOS系統(tǒng)中安裝了Docker的舊版本,你需要先卸載舊版Docker及其相關(guān)依賴(lài),執(zhí)行以下命令:
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine
因?yàn)槲业南到y(tǒng)系剛安裝的,所以執(zhí)行上面的命令提示的是沒(méi)有找到需要移除的包!

如果yum報(bào)告沒(méi)有安裝這些軟件包,那也沒(méi)關(guān)系。
注意:/var/lib/docker/目錄下的內(nèi)容,包括鏡像、容器、卷組、網(wǎng)絡(luò)等文件將被保留。Docker CE 的新包名為docker-ce。
yum到底是干什么的?
簡(jiǎn)單描述:yum稱(chēng)為包管理器,主要用來(lái)解決:下載、依賴(lài)關(guān)系、安裝、卸載四種問(wèn)題。
詳細(xì)說(shuō)明:http://www.dbjr.com.cn/article/165658.htm
使用yum安裝:
執(zhí)行以下命令安裝依賴(lài)包和必要的一些系統(tǒng)工具:
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
配置yum穩(wěn)定鏡像源:
因?yàn)閲?guó)內(nèi)網(wǎng)絡(luò)原因,推薦使用阿里云提供的Docker CE 鏡像源站!
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

官方鏡像源地址:
# 官方源 # sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
安裝 Docker
更新yum軟件源緩存,并安裝docker-ce(一路yes即可)。
sudo yum install docker-ce docker-ce-cli containerd.io
如下是成功安裝的依賴(lài):

查看安裝成功的docker版本:docker -v

CentOS8 額外設(shè)置
由于 CentOS8 防火墻使用了nftables,但 Docker 尚未支持nftables。
首先我們查看防火墻的狀態(tài),假如防火墻狀態(tài)是開(kāi)啟的我們執(zhí)行下面的操作:
systemctl status firewalld

我們可以使用如下設(shè)置使用iptables:更改/etc/firewalld/firewalld.conf
# FirewallBackend=nftables FirewallBackend=iptables
或者執(zhí)行以下命令:
firewall-cmd --permanent --zone=trusted --add-interface=docker0 firewall-cmd --reload
開(kāi)啟Docker服務(wù):
執(zhí)行sudo service docker start 命令開(kāi)啟Docker服務(wù)提示異常:Redirecting to /bin/systemctl start docker.service

看異常就是需要執(zhí)行systemctl的相關(guān)命令,因?yàn)長(zhǎng)inux的不同發(fā)行版開(kāi)啟Docker服務(wù)的命令也有所不同
sudo systemctl enable docker sudo systemctl start docker
最后查看docker運(yùn)行狀態(tài)
systemctl status docker

啟動(dòng) Docker 守護(hù)進(jìn)程:
官方教程:https://docs.docker.com/config/daemon/systemd/
手動(dòng)啟動(dòng)
安裝 Docker 后,您需要啟動(dòng) Docker 守護(hù)程序。大多數(shù) Linux 發(fā)行版用于systemctl啟動(dòng)服務(wù)。
sudo systemctl start docker
在系統(tǒng)啟動(dòng)時(shí)自動(dòng)啟動(dòng)
如果您希望 Docker 在啟動(dòng)時(shí)啟動(dòng),請(qǐng)參閱配置 Docker 以在啟動(dòng)時(shí)啟動(dòng)👉。
Docker基礎(chǔ)命令:
啟動(dòng)docker:systemctl start docker
停止docker:systemctl stop docker
重啟docker:systemctl restart docker
查看docker狀態(tài):systemctl status docker
開(kāi)機(jī)啟動(dòng):systemctl enable docker
當(dāng)前系統(tǒng)docker信息:docker info
列舉出所有的容器:docker ps -a
停止容器:docker start 容器ID或容器名
直接關(guān)閉容器:docker kill 容器ID或容器名
重啟容器:docker restart 容器ID或者容器名
刪除容器:docker rm 容器ID或者容器名
查看鏡像:docker image ls
更多命令搜索(推薦):Docker命令在線速查手冊(cè)
測(cè)試 Docker 是否安裝正確
首先我們輸入docker run hello-world是否會(huì)出現(xiàn)下圖所示的提示,如果出現(xiàn)報(bào)錯(cuò),這環(huán)境配置可能出現(xiàn)了問(wèn)題。
注意:這行命令會(huì)讓Docker從官方倉(cāng)庫(kù)中拉去hello-world的鏡像到本地(是本地不存在該鏡像的情況),并且將其自動(dòng)實(shí)例化容器。

Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
2db29710123e: Pull complete
Digest: sha256:37a0b92b08d4919615c3ee023f7ddb068d12b8387475d64c622ac30f45c29c51
Status: 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 bash
Share 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/
查看hello-World鏡像和容器:


Docker學(xué)習(xí)系列文章
參考文章:
Install Docker Engine on CentOS
到此這篇關(guān)于CentOS 8.4安裝Docker的文章就介紹到這了,更多相關(guān)CentOS 8.4安裝Docker內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
jenkins中通過(guò)Publish Over SSH插件將項(xiàng)目部署到遠(yuǎn)程機(jī)器上的講解說(shuō)明
今天小編就為大家分享一篇關(guān)于jenkins中通過(guò)Publish Over SSH插件將項(xiàng)目部署到遠(yuǎn)程機(jī)器上的講解說(shuō)明,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-02-02
Jenkins+docker發(fā)布Springbot服務(wù)的實(shí)現(xiàn)
本文主要介紹了Jenkins+docker發(fā)布Springbot服務(wù)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-03-03
docker配置阿里云鏡像倉(cāng)庫(kù)的實(shí)現(xiàn)
本文主要介紹了docker配置阿里云鏡像倉(cāng)庫(kù)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-08-08
給docker創(chuàng)建的elasticsearch容器添加密碼簡(jiǎn)單步驟
在使用Elasticsearch(ES)Docker容器時(shí),有時(shí)需要設(shè)置密碼來(lái)保護(hù)數(shù)據(jù)的安全性,這篇文章主要給大家介紹了關(guān)于給docker創(chuàng)建的elasticsearch容器添加密碼的簡(jiǎn)單步驟,需要的朋友可以參考下2024-02-02
利用drone?ci自動(dòng)化部署靜態(tài)博客的完整步驟
drone是基于容器的構(gòu)建服務(wù),配置簡(jiǎn)單且免費(fèi),在 github上也有20Kstar,下面這篇文章主要給大家介紹了關(guān)于利用drone?ci自動(dòng)化部署靜態(tài)博客的相關(guān)資料,需要的朋友可以參考下2022-05-05
使用Docker遷移服務(wù)到離線服務(wù)器的過(guò)程
最近遇到的這個(gè)場(chǎng)景,需要把之前開(kāi)發(fā)的一套系統(tǒng)遷移到一個(gè)離線的服務(wù)器上,這個(gè)服務(wù)器有點(diǎn)麻煩,接入VPN后通過(guò)堡壘機(jī)才能訪問(wèn),速度也很慢,遇到不少坑,本文記錄一下遷移過(guò)程,需要的朋友可以參考下2023-06-06
Docker實(shí)現(xiàn)從零開(kāi)始搭建SOLO個(gè)人博客的方法步驟
本文主要介紹了Docker實(shí)現(xiàn)從零開(kāi)始搭建SOLO個(gè)人博客,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-11-11
使用腳本一鍵打包并上傳docker鏡像的實(shí)現(xiàn)代碼
這篇文章主要介紹了使用腳本一鍵打包并上傳docker鏡像的實(shí)現(xiàn)代碼,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-02-02
Docker默認(rèn)網(wǎng)段修改實(shí)現(xiàn)方法解析
這篇文章主要介紹了Docker默認(rèn)網(wǎng)段修改實(shí)現(xiàn)方法解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-11-11

