那些釣魚網(wǎng)站是怎么做的百度云app下載安裝
安裝
1.卸載舊版本
在安裝 Docker 引擎之前,您必須首先確保卸載任何沖突的軟件包。
發(fā)行版維護(hù)者在他們的存儲庫。必須先卸載這些軟件包,然后才能安裝 Docker 引擎的正式版本。
要卸載的非官方軟件包是:
docker.io
docker-compose
docker-doc
podman-docker
此外,Docker引擎依賴項(xiàng)捆綁為一個捆綁包。如果你以前安裝過,卸載它們以避免 與 Docker 引擎捆綁的版本沖突。
containerd?
runc?
containerd.io?
containerd?
? ?運(yùn)行以下命令以卸載所有沖突的軟件包:
for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do sudo apt-get remove $pkg; done
apt-get
可能會報告您沒有安裝這些軟件包
卸載 Docker 時會自動刪除存儲的映像、容器、卷和網(wǎng)絡(luò)
2.使用apt存儲庫安裝
? ?(1).更新軟件包索引并安裝軟件包以允許使用 基于 HTTPS 的存儲庫:
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
? ?(2).添加 Docker 的官方 GPG 密鑰:
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
? ?(3).使用以下命令設(shè)置存儲庫:
echo \"deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \"$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
? 注意
如果您使用衍生發(fā)行版,例如 Kali Linux, 您可能需要替換此命令中預(yù)期 打印版本代號:
$(. /etc/os-release && echo "$VERSION_CODENAME")
? ?(4).更新包索引:apt
sudo apt-get update
3.安裝 Docker 引擎
? ?(1).安裝 Docker Engine、containerd 和 Docker Compose。
? ? ? ? 要安裝最新版本,請運(yùn)行:
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
? ?(2).通過運(yùn)行映像驗(yàn)證 Docker 引擎安裝是否成功:hello-world
sudo docker run hello-world
到現(xiàn)在如果沒有報錯,說明已成功安裝并啟動 Docker 引擎。
4.升級Docker引擎
要升級Docker引擎,請按照https://docs.docker.com/engine/install/debian/#install-docker-engine
選擇新版本,進(jìn)行升級
5.卸載Docker引擎
? ?(1).卸載 Docker Engine、CLI、containerd 和 Docker Compose 軟件包:
sudo apt-get purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras
? ?(2).主機(jī)上的映像、容器、卷或自定義配置文件 不會自動移除。要刪除所有映像、容器和卷,請執(zhí)行以下操作:
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd
下面是我在按照上面步驟進(jìn)行安裝時遇到的問題
按上面步驟安裝完docker引擎之后,啟動docker引擎會報以下錯誤
?1.首先去 /etc/init.d? 看有沒有docker的文件
cat docker
?2.去 測定/docker.log
??3.解決問題
sudo update-alternatives --config iptables
sudo update-alternatives --set iptables /usr/sbin/iptables-legacy
sudo update-alternatives --set ip6tables /usr/sbin/ip6tables-legacy
?4.啟動docker
?至此,問題解決,成功啟動
補(bǔ)充一點(diǎn)
使用systemctl命令管理docker報錯
當(dāng)你嘗試使用?systemctl 命令來管理 Linux 系統(tǒng)上的服務(wù)的時候,如果系統(tǒng)中根本就沒有使用?systemctl,而是(很可能)使用的?SysV init (sysvinit)命令,就會報錯。
在 windows 中通過 WSL 使用的Debian,默認(rèn)情況下系統(tǒng)使用的是 SysV 而不是 systemctl。當(dāng)你使用 systemctl 命令(適用于有 systemd init 的系統(tǒng))的時候,系統(tǒng)自然會報錯。
那么怎樣查看到底用的是哪個 init 系統(tǒng)呢?可以使用如下命令來檢查 PID 為 1 的進(jìn)程(即系統(tǒng)運(yùn)行的第一個進(jìn)程)名稱:
ps -p 1 -o comm=
?它應(yīng)該在輸出中顯示 init 或 sysv(或類似的東西)。如上圖你看到的是 init,那么你的系統(tǒng)就沒有使用 systemd,應(yīng)該使用 init 命令。
其實(shí)systemctl命令和sysvinit 命令功能相同,要修復(fù)systemctl命令報錯,最簡單的方式就是不使用 systemctl 命令,而是使用 sysvinit 命令。
sysvinit 也不復(fù)雜,它與 systemctl 命令的語法相似。如下表格為兩個命令的對比: