docker 安裝

安裝

安裝

官方安裝指南:

CentOS 安裝 Docker

系統(tǒng)要求

  • Docker CE 支持 64 位版本 CentOS 7
  • CentOS 7 內(nèi)核版本不低于3.10

查看內(nèi)核版本

[root@oracle11g ~]# uname -r
3.10.0-1127.18.2.el7.x86_64

卸載舊版本

舊版本的Docker稱為docker或者docker-engine,使用以下命令卸載舊版本

# 查看 docker 是否安裝
yum list installed | grep docker 
# 刪除安裝的 docker 內(nèi)容
sudo yum remove docker docker-common docker-selinux docker-engine docker-ce-cli docker-ce

yum 安裝

注意:如果安裝的事 centos 7 minimal版本,執(zhí)行安裝提示 “沒有可用軟件包” 這個(gè)時(shí)候需要安裝必要的軟件依賴及更新增加docker-ce yum源

# 更新軟件源
yum update

# 安裝必要依賴
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

# 添加docker源
[root@oracle11g ~]# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
已加載插件:fastestmirror
adding repo from: https://download.docker.com/linux/centos/docker-ce.repo
grabbing file https://download.docker.com/linux/centos/docker-ce.repo to /etc/yum.repos.d/docker-ce.repo
repo saved to /etc/yum.repos.d/docker-ce.repo

# 更新yum緩存
yum makecache fast
# 查看所有倉庫中所有docker版本
yum list docker-ce --showduplicates|sort -r

# 安裝
sudo yum install -y docker-ce

# 安裝(選擇版本)
yum -y install docker-ce-19.03.0.ce

使用腳本安裝

在測試或開發(fā)環(huán)境中,docker官方微了簡化安裝流程,提供便捷的安裝腳本,centos系統(tǒng)上可以使用如下命令進(jìn)行安裝(docker ce edge)

curl -fsSL https://get.docker.com -o get-docker.sh #獲取腳本
sudo sh get-docker.sh --mirror Aliyun #安裝腳本

自制腳本

#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH

USER='docker'
GROUP='docker'
Version="19.03.13-3.el7"
# 安裝環(huán)境
echo "配置 yum 環(huán)境"
yum install -y yum-utils device-mapper-persistent-data lvm2 wget || echo -e '\033[1;31m安裝失敗,請檢查網(wǎng)絡(luò)和yum源配置!\033[0m'

# 配置安裝源
echo "配置docker安裝源"
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

# 更新yum緩存
yum makecache fast

# 安裝docker
echo "安裝docker"
yum -y install docker-ce-$Version docker-ce-cli-$Version || echo -e '\033[1;31m安裝失敗,請檢查網(wǎng)絡(luò)和yum源配置!\033[0m'

# 創(chuàng)建用戶組
echo "創(chuàng)建用戶組:docker"
egrep "^$GROUP" /etc/group >& /dev/null
if [ $? -ne 0 ] 
then
    groupadd $USER
fi

# 創(chuàng)建用戶
echo "創(chuàng)建用戶:docker"
egrep "^$USER:" /etc/passwd >& /dev/null
if [ $? -ne 0 ]
then
    useradd -g $GROUP -s /sbin/nologin $USER -M
fi

echo "配置docker國內(nèi)鏡像"
if [ ! -d "/etc/docker" ]
then
    mkdir -p /etc/docker
fi
tee /etc/docker/daemon.json <<-'EOF'
{
    "registry-mirrors":[
        "https://ung2thfc.mirror.aliyuncs.com",
        "https://mirror.ccs.tencentyun.com",
        "https://docker.mirrors.ustc.edu.cn",
        "https://registry.docker-cn.com"
    ]
}
EOF

echo "注冊服務(wù)"
systemctl daemon-reload
systemctl enable --now docker

docker version && echo -e "\033[1;32m $Version 安裝成功!\033[0m" || echo -e "\033[1;32m $Version 安裝成功!\033[0m"

啟動(dòng)Docker CE

 # 設(shè)置開機(jī)啟動(dòng)
[root@oracle11g ~]# systemctl enable docker
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.
# 啟動(dòng)|重啟|停止|當(dāng)前狀態(tài)
sudo systemctl start|restart|stop|status docker

建立 docker 用戶組

默認(rèn)情況下,docker命令會(huì)使用Unix Socket與Docker引擎通訊。而只有root用戶和docker組的用戶才可以訪問docker引擎的Unix Socket。一般Linux系統(tǒng)上不會(huì)直接使用root用戶進(jìn)行操作。因此,需要使用docker的用戶加入docker用戶組

sudo groupadd docker #建立docker組
sudo usermod -aG docker $USER #將當(dāng)前用戶追加入docker組
# 添加到docker組后需要切換下用戶,才生效或者更新組
sudo su #切換到root用戶
su username #切換回之前用戶(username之前用戶名稱)

# 更新組
newgrp docker #更新用戶

測試docker是否安裝正確

docker run hello-world #啟動(dòng)一個(gè)基于hello-world鏡像的容器
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容