潇洒钓鱼人 發表於 2025-1-15 16:51:00

Debian 安装 Docker

<h2 id="卸载已有-docker">卸载已有 Docker</h2>
<p>如果你之前安装过 Docker Engine 之前,你需要卸载旧版本,避免冲突:</p>
<pre><code class="language-shell">for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do sudo apt-get remove $pkg; done
</code></pre>
<h2 id="安装方法">安装方法</h2>
<h3 id="使用官方安装脚本自动安装-推荐使用">使用官方安装脚本自动安装 (推荐使用)</h3>
<ol>
<li>
<p>下载官方脚本</p>
<pre><code class="language-she"> curl -fsSL https://get.docker.com -o get-docker.sh
</code></pre>
</li>
<li>
<p>执行脚本</p>
<pre><code class="language-shell">sudo sh get-docker.sh
</code></pre>
</li>
</ol>
<h3 id="官方-apt-源安装">官方 apt 源安装</h3>
<p>如果你的网络无法连接到官方网站的话,那可以使用 apt 源手动安装</p>
<ol>
<li>
<p>更新 apt 源</p>
<pre><code class="language-shell">sudo apt update -y# 更新 apt 缓存
</code></pre>
<p>如果你的服务器长时间未更新,建议使用<code>sudo apt upgrade -y</code> 更新一下软件版本 <em><strong>注意:生产环境不要执行这个操作,除非你确定软件升级没有影响</strong></em></p>
</li>
<li>
<p>安装下载 https 依赖包</p>
<pre><code class="language-shell">sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
</code></pre>
</li>
<li>
<p>添加 官方 GPC 密钥</p>
<pre><code class="language-shell">sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc # 下载 GPC 密钥到本地

sudo chmod a+r /etc/apt/keyrings/docker.asc# 将 GPC 密钥文件的读取权限添加给所有用户
</code></pre>
</li>
<li>
<p>添加 Docker 官方仓库</p>
<p>添加 apt 源到本地仓库</p>
<pre><code class="language-shell">echo"deb https://download.docker.com/linux/debian \
$(. /etc/os-release &amp;&amp; echo "$VERSION_CODENAME") stable" |sudo tee /etc/apt/sources.list.d/docker.list &gt; /dev/null
</code></pre>
</li>
<li>
<p>更新 apt 缓存以保障使用步骤4添加源</p>
<pre><code class="language-shell">sudo apt update -y
</code></pre>
</li>
<li>
<p>验证仓库添加成功</p>
<p>执行以下命令查看返回结果</p>
<pre><code class="language-shell">apt-cache policy docker-ce
</code></pre>
<p>如果返回的结果包含<code>https://download.docker.com/linux/debian</code>,则是添加成功。</p>
</li>
<li>
<p>安装 Docker</p>
<pre><code>sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
</code></pre>
</li>
</ol>
<h3 id="清华源-apt-安装">清华源 apt 安装</h3>
<p>**具体操作可以参照:替换Debian清华源清华源-Docker CE 软件仓库</p>
<ol>
<li>
<p>更换 apt 源为清华源</p>
<pre><code class="language-shell">sudo mv /etc/apt/sources.list /etc/apt/sources.list.bak# 备份原有 apt源
</code></pre>
<ol>
<li>
<p>如果你的 Debian 版本是 12,则执行以下命令(<em><strong>注意:下面是一行命令,不要单独执行</strong></em>)</p>
<pre><code class="language-shell">sudo tee /etc/apt/sources.list &lt;&lt; EOF
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm main contrib non-free non-free-firmware
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm main contrib non-free non-free-firmware

deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-updates main contrib non-free non-free-firmware
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-updates main contrib non-free non-free-firmware

deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-backports main contrib non-free non-free-firmware
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-backports main contrib non-free non-free-firmware

# 以下安全更新软件源包含了官方源与镜像站配置,如有需要可自行修改注释切换
deb https://security.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware
# deb-src https://security.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware
EOF
</code></pre>
</li>
<li>
<p>如果你的 Debian 版本是 11,则执行以下命令(<em><strong>注意:下面是一行命令,不要单独执行</strong></em>)</p>
<pre><code class="language-shell">sudo tee /etc/apt/sources.list &lt;&lt; EOF
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye main contrib non-free
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye main contrib non-free

deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-updates main contrib non-free
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-updates main contrib non-free

deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-backports main contrib non-free
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-backports main contrib non-free

# 以下安全更新软件源包含了官方源与镜像站配置,如有需要可自行修改注释切换
deb https://security.debian.org/debian-security bullseye-security main contrib non-free
# deb-src https://security.debian.org/debian-security bullseye-security main contrib non-free
EOF
</code></pre>
</li>
</ol>
</li>
<li>
<p>安装验证密钥依赖</p>
<pre><code class="language-shell">sudo apt update -y # 更新缓存
sudo apt install -y curl gnupg2# 安装依赖
</code></pre>
</li>
<li>
<p>添加清华源 Docker GPC 密钥</p>
<pre><code class="language-shell">curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian/gpg |sudo apt-key add -
</code></pre>
</li>
<li>
<p>添加清华 Docker 源</p>
<pre><code class="language-shell">echo"deb https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian bookworm stable" | sudo tee /etc/apt/sources.list.d/docker.list &gt; /dev/null
</code></pre>
</li>
<li>
<p>更新 apt 缓存以保障使用步骤4添加源</p>
<pre><code class="language-shell">sudo apt update -y
</code></pre>
</li>
<li>
<p>安装 Docker</p>
<pre><code>sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
</code></pre>
</li>
</ol>
<h2 id="启动并验证-docker">启动并验证 Docker</h2>
<ol>
<li>
<p>启动 Docker 设置开机启动</p>
<pre><code class="language-shell">sudo systemctl start docker # 启动 Docker
sudo systemctl enable docker # 设置开机启动
</code></pre>
</li>
<li>
<p>查看 Docker 版本</p>
<pre><code class="language-shell">sudo docker --version
</code></pre>
</li>
<li>
<p>拉取 测试镜像验证</p>
<pre><code class="language-shell">sudo docker run hello-world
</code></pre>
</li>
</ol>
<h2 id="取消非-root-用户需要-sudo">取消非 root 用户需要 sudo</h2>
<ol>
<li>
<p>创建 docker 组</p>
<pre><code class="language-shell">sudo groupadd docker
</code></pre>
</li>
<li>
<p>将当前用户加入 docker 组</p>
<pre><code class="language-shell">sudo usermod -aG docker $USER
</code></pre>
<p>如果给其他用户添加权限则把 $USER 修改为用户名,例如: zhangsan</p>
<pre><code class="language-shell">sudo usermod -aG docker zhangsan
</code></pre>
</li>
<li>
<p>刷新docker成员</p>
<pre><code>newgrp docker
</code></pre>
</li>
<li>
<p>重启服务</p>
<pre><code>sudo systemctl restart docker # 重启 docker
</code></pre>
</li>
<li>
<p>验证</p>
<pre><code class="language-shell">docker ps -a
</code></pre>
</li>
</ol>
<h2 id="卸载-docker">卸载 Docker</h2>
<ol>
<li>
<p>卸载 Docker</p>
<pre><code class="language-shell">for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do sudo apt-get remove $pkg; done
</code></pre>
</li>
<li>
<p>删除 Docker 目录</p>
<pre><code class="language-shell">sudo rm -rf /var/lib/docker
</code></pre>
</li>
</ol><br><br>
来源:https://www.cnblogs.com/Lenbrother/p/18673403
頁: [1]
查看完整版本: Debian 安装 Docker