Linux搭建Docker環(huán)境的詳細(xì)過程(最新推薦)
Docker及系統(tǒng)版本
Docker從17.03版本之后分為CE(Community Edition: 社區(qū)版)和EE(Enterprise Edition: 企業(yè)版)。相對(duì)于社區(qū)版本,企業(yè)版本強(qiáng)調(diào)安全性,但需付費(fèi)使用。這里我們使用社區(qū)版本即可。
Docker支持64位版本的CentOS 7和CentOS 8及更高版本,它要求Linux內(nèi)核版本不低于3.10。
查看Linux版本的命令這里推薦兩種:lsb_release -a或cat /etc/redhat-release。
lsb_release -a查看效果:
[ ~]$ lsb_release -a LSB Version: :core-4.1-amd64:core-4.1-noarch Distributor ID: CentOS Description: CentOS Linux release 7.6.1810 (Core) Release: 7.6.1810 Codename: Core
cat /etc/redhat-release查看版本效果:
[~]$ cat /etc/redhat-release CentOS Linux release 7.6.1810 (Core)
顯然,當(dāng)前Linux系統(tǒng)為CentOS7。再查一下內(nèi)核版本是否不低于3.10。
查看內(nèi)核版本有三種方式:
- cat /proc/version
- uname -a
- uname -r
三種形式都可以查看到內(nèi)容版本,比如:
[ ~]$ uname -r 3.10.0-1160.45.1.el7.x86_64
可以看到,當(dāng)前Linux內(nèi)核版本滿足Docker的需要。
Docker的自動(dòng)化安裝
Docker官方和國(guó)內(nèi)daocloud都提供了一鍵安裝的腳本,使得Docker的安裝更加便捷。
官方的一鍵安裝方式:
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
國(guó)內(nèi) daocloud一鍵安裝命令:
curl -sSL https://get.daocloud.io/docker | sh
執(zhí)行上述任一條命令,耐心等待即可完成Docker的安裝。
安裝完之后,修改docker鏡像源——修改docker配置文件 /etc/docker/daemon.json :
{
"registry-mirrors": [
"https://docker.1panel.live",
"https://docker.m.daocloud.io",
"https://docker.cloudlayer.icu"
]
}清華大學(xué)源:
https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo
阿里云鏡像源:
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
網(wǎng)易源:
http://mirrors.163.com/docker-ce/linux/centos/docker-ce.repo
修改完后,重啟Docker服務(wù):systemctl restart docke
Docker手動(dòng)安裝
手動(dòng)安裝Docker分三步:卸載、設(shè)置倉庫、安裝。
卸載Docker(可選)
第一步,卸載歷史版本。
這一步是可選的,如果之前安裝過舊版本的Docker,可以使用如下命令進(jìn)行卸載:
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-ce設(shè)置源倉庫
第二步,設(shè)置倉庫。
新主機(jī)上首次安裝Docker Engine-Community之前,需要設(shè)置Docker倉庫。此后可從倉庫安裝和更新Docker。
在設(shè)置倉庫之前,需先按照所需的軟件包。yum-utils提供了yum-config-manager,并且device mapper存儲(chǔ)驅(qū)動(dòng)程序需要device-mapper-persistent-data和lvm2。
$ sudo yum install -y yum-utils \ device-mapper-persistent-data \ lvm2
執(zhí)行上述命令,安裝完畢即可進(jìn)行倉庫的設(shè)置。使用官方源地址設(shè)置命令如下:
$ sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo通常,官方的源地址比較慢,可將上述的源地址替換為國(guó)內(nèi)比較快的地址:
清華大學(xué)源:https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo
阿里源:http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
倉庫設(shè)置完畢,即可進(jìn)行Docker的安裝。
Docker安裝
執(zhí)行一下命令,安裝最新版本的 Docker Engine-Community 和 containerd。
sudo yum install -y docker-ce docker-ce-cli containerd.io
docker-ce為社區(qū)免費(fèi)版本。稍等片刻,docker即可安裝成功。但安裝完成之后的默認(rèn)是未啟動(dòng)的,需要進(jìn)行啟動(dòng)操作。
如果不需要docker-ce-cli或containerd.io可直接執(zhí)行如下命令:
yum install -y docker-ce
至此,完成Docker安裝。
Docker啟動(dòng)
啟動(dòng)Docker的命令:
sudo systemctl start docker
啟用 Docker 服務(wù),使其在系統(tǒng)啟動(dòng)時(shí)自動(dòng)啟動(dòng):
sudo systemctl enable docker
通過運(yùn)行hello-world鏡像來驗(yàn)證是否正確安裝了Docker Engine-Community。
// 拉取鏡像 sudo docker pull hello-world // 執(zhí)行hello-world sudo docker run hello-world
如果執(zhí)行之后,控制臺(tái)顯示如下信息,則說明Docker安裝和啟動(dòng)成功:
[root@iZ8vb8pfb2awsz4qy7vm7qZ ~]# docker run hello-world Hello from Docker! This message shows that your installation appears to be working correctly.
除了啟動(dòng)Docker,一些其他啟動(dòng)相關(guān)的命令:
守護(hù)進(jìn)程重啟:systemctl daemon-reload
重啟Docker服務(wù):systemctl restart docker / service docker restart
關(guān)閉Docker服務(wù):docker service docker stop / docker systemctl stop docker
刪除Docker
刪除安裝包:
yum remove docker-ce
刪除鏡像、容器、配置文件等內(nèi)容:
rm -rf /var/lib/docker
Docker其他常見命令
安裝完成Docker之后,這里匯總列一下常見的Docker操作命令:
鏡像操作
搜索倉庫鏡像:
docker search 鏡像名
拉取鏡像:
docker pull 鏡像名
查看鏡像:
docker images
刪除鏡像:
docker rmi image_id
清除所有 <none> 標(biāo)簽的鏡像:
docker rmi $(docker images -f "dangling=true" -q)
容器操作
查看正在運(yùn)行的容器:
docker ps
查看所有容器:
docker ps -a
刪除容器:
docker rm container_id
啟動(dòng)(停止的)容器:
docker start 容器ID
停止容器:
docker stop 容器ID
重啟容器:
docker restart 容器ID
啟動(dòng)新容器(示例:?jiǎn)?dòng)一個(gè) Ubuntu 容器并進(jìn)入 bash):
docker run -it ubuntu /bin/bash
進(jìn)入容器:
docker attach 容器ID
或
docker exec -it 容器ID /bin/sh
系統(tǒng)清理
刪除未使用的鏡像、停止的容器、未使用的網(wǎng)絡(luò)和構(gòu)建緩存(包括 <none> 標(biāo)簽鏡像):
docker system prune -a
除了執(zhí)行 docker system prune -a 的所有操作外,還會(huì)刪除未使用的卷:
docker system prune -a --volumes
到此這篇關(guān)于Linux搭建Docker環(huán)境的文章就介紹到這了,更多相關(guān)Linux Docker環(huán)境內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Linux平臺(tái)搭建docker環(huán)境并簡(jiǎn)單使用示例
- Linux搭建Docker環(huán)境全過程
- linux下使用Docker和OSS輕松搭建ownCloud專屬網(wǎng)盤(網(wǎng)盤關(guān)閉不用怕)
- 阿里云Linux CentOS 7 Docker部署使用gogs搭建自己的git服務(wù)器
- Linux服務(wù)器搭建nvidia-docker環(huán)境過程詳解
- Linux環(huán)境下使用Docker搭建Jenkins容器的方法步驟
- 如何使用Docker和cpolar在Linux服務(wù)器上搭建DashDot監(jiān)控面板
- Linux如何使用docker方式搭建SQL Server
- 使用docker搭建嵌入式Linux開發(fā)環(huán)境
相關(guān)文章
docker容器下配置jupyter notebook的操作
這篇文章主要介紹了docker容器下配置jupyter notebook的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-03-03
如何解決docker認(rèn)證問題failed to authorize:failed to&n
這篇文章主要介紹了在使用Docker構(gòu)建鏡像時(shí)遇到的認(rèn)證問題,并提供了兩種解決方案:全局代理設(shè)置和禁用BuildKit,文章還指出了一個(gè)Dockerfile中的語法錯(cuò)誤,并提供了修正建議2025-03-03
Docker Overlay2磁盤空間占用過大清理的方法實(shí)現(xiàn)
隨著業(yè)務(wù)量的不斷增大,容器的不斷啟動(dòng),往往會(huì)出現(xiàn)磁盤空間不足,本文主要介紹了Docker Overlay2磁盤空間占用過大清理的方法實(shí)現(xiàn),感興趣的可以了解一下2022-03-03
docker使用alpine構(gòu)建jdk21鏡像的詳細(xì)步驟
這篇文章主要給大家介紹了關(guān)于docker使用alpine構(gòu)建jdk21鏡像的詳細(xì)步驟,鏡像中包含了應(yīng)用程序所需要的運(yùn)行環(huán)境,函數(shù)庫,配置,以及應(yīng)用本身等各種文件,這些文件分層打包而成,需要的朋友可以參考下2024-03-03
SpringBoot打包成Docker鏡像的項(xiàng)目實(shí)踐
Spring Boot和Docker,可以方便地將應(yīng)用程序部署到不同的環(huán)境中,本文主要介紹了SpringBoot打包成Docker鏡像的項(xiàng)目實(shí)踐,具有一定的參考價(jià)值,感興趣的可以了解一下2024-03-03
Docker部署Laravel應(yīng)用實(shí)現(xiàn)隊(duì)列&任務(wù)調(diào)度
這篇文章主要介紹了Docker部署Laravel應(yīng)用實(shí)現(xiàn)隊(duì)列&任務(wù)調(diào)度,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09

