一、認識Docker
-
Docker的定義
????????Docker 是一個開源的應用容器引擎,允許開發者將應用及其依賴打包到一個輕量級、可移植的容器中。容器化技術使得應用可以在任何支持 Docker 的環境中運行,確保環境一致性。
-
Docker的核心組件
- Docker Engine:負責創建和管理容器的核心服務;
- Docker Image:一個只讀模板,包含運行應用所需的代碼、庫和配置文件;
- Docker Container:Docker鏡像的運行實例,是一個獨立的、可執行的軟件包;
- Dockerfile:一個文本文件,包含構建Docker鏡像的指令。
二、安裝Docker
-
卸載舊的版本(如果之前有安裝過需要);
$ 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
-
更新包索引并安裝依賴;
sudo yum install -y yum-utils
-
添加Docker官方的GPG密鑰;
sudo mkdir -m 0755 -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
-
添加yum源(由于某種不可抗的原因,需要源換成國內源);
#添加源
curl -o /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#換源
sudo sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo
-
安裝Docker;
sudo yum install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
-
啟動docker;
#因為我用的是Rocky linux 所以防火墻使用的使用的是nftables,docker并不支持,所以需要改成iptables;
vim /etc/firwalld/firewalld.conf
FirewallBackend=iptables#啟動docker
sudo systemctl enable docker && systemctl start docker#建立docker組
sudo groupadd docker
#將當前用戶加入docker組
sudo usermod -aG docker $USER#測試docker不成功,配置鏡像加速sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://do.nark.eu.org","https://dc.j8.work","https://docker.m.daocloud.io","https://dockerproxy.com","https://docker.mirrors.ustc.edu.cn","https://docker.nju.edu.cn"]
}
EOF#重啟docker
systemctl daemon-reload
systemctl restart docker
? ? ? ? Docker安裝完畢,下面玩轉Docker吧!