一、准备工作:确认架构并下载安装包
1.1 确认目标服务器架构
在目标服务器上执行以下命令,确认系统架构:
uname -m
-
输出
x86_64:对应 amd64 架构(Intel/AMD 64位服务器) -
输出
aarch64:对应 arm64 架构(如树莓派4B、ARM云服务器等)
1.2 在有网络的环境下载二进制包
访问 Docker 官方静态二进制下载地址: https://download.docker.com/linux/static/stable/
根据上一步确认的架构,进入对应目录下载 .tgz 压缩包:
| 服务器架构 | 下载目录 |
|---|---|
| amd64 (x86_64) | x86_64/ |
| arm64 (aarch64) | aarch64/ |
推荐下载最新稳定版本,例如
docker-28.4.0.tgz(版本号请以实际为准)。
1.3 将安装包上传至离线服务器
使用 U 盘、scp、FTP 等方式将下载的 .tgz 文件上传到目标服务器的任意目录,例如 /home/your_user/docker-install/。
二、安装 Docker
2.1 解压二进制包
wget https://download.docker.com/linux/static/stable/aarch64/docker-29.6.2.tgz tar -xzvf docker-*.tgz
解压后会得到一个 docker/ 目录,其中包含 dockerd(守护进程)和 docker(客户端)等可执行文件。
2.2 拷贝到系统路径
将二进制文件拷贝到 /usr/bin/ 目录,让系统可以直接识别这些命令:
sudo cp docker/* /usr/bin/
如果不想使用
sudo,也可以拷贝到用户自己的~/bin/目录(需确保该目录在PATH环境变量中)。
2.3 创建 systemd 服务(推荐)
为了让 Docker 开机自启并以服务形式运行,需要创建 systemd 服务文件。在 /etc/systemd/system/ 下创建 docker.service 文件:
sudo tee /etc/systemd/system/docker.service > /dev/null << 'EOF' [Unit] Description=Docker Application Container Engine Documentation=https://docs.docker.com After=network-online.target firewalld.service Wants=network-online.target [Service] Type=notify ExecStart=/usr/bin/dockerd ExecReload=/bin/kill -s HUP $MAINPID LimitNOFILE=infinity LimitNPROC=infinity LimitCORE=infinity TimeoutStartSec=0 Delegate=yes KillMode=process Restart=on-failure StartLimitBurst=3 StartLimitInterval=60s [Install] WantedBy=multi-user.target EOF
2.4 启动 Docker 服务
sudo systemctl daemon-reload sudo systemctl start docker sudo systemctl enable docker
2.5 验证安装
sudo docker version
如果能正常显示客户端和服务端的版本信息,说明安装成功。
三、配置普通用户使用 Docker(核心步骤)
默认情况下,Docker 守护进程的 Unix 套接字 /var/run/docker.sock 只有 root 用户有权限访问,因此普通用户执行 docker 命令需要加 sudo。
要实现普通用户免 sudo 使用 Docker,需要将用户加入 docker 用户组。
3.1 创建 docker 用户组(如果不存在)
sudo groupadd docker
3.2 将当前用户加入 docker 组
sudo usermod -aG docker $USER
3.3 刷新组成员身份
有两种方式使组变更生效:
-
方法一:退出当前 SSH 会话并重新登录
-
方法二:执行以下命令:
newgrp docker
3.4 验证普通用户权限
执行以下命令,确认不再需要 sudo:
docker version docker run hello-world
如果 hello-world 容器正常输出欢迎信息,说明普通用户已成功获取 Docker 使用权限。
四、清理与卸载
如需卸载离线安装的 Docker,执行以下步骤:
sudo systemctl stop docker sudo systemctl disable docker sudo rm -f /etc/systemd/system/docker.service sudo rm -rf /usr/bin/docker* sudo rm -rf /usr/bin/containerd* sudo rm -rf /var/lib/docker sudo rm -rf /var/lib/containerd sudo systemctl daemon-reload
如需同时移除用户组中的用户,可执行:
sudo gpasswd -d $USER docker
五、注意事项
-
安全提示:
docker用户组拥有与root用户同等的权限,请仅将可信用户加入该组。 -
生产环境建议:官方文档指出,静态二进制安装不会自动获得安全更新,建议生产环境优先使用包管理器在线安装。离线安装多用于测试或网络受限的内网环境。
-
关于
~/.docker/目录权限:如果此前使用sudo执行过 docker 命令,可能会因权限问题导致警告。可通过以下命令修复:sudo chown "$USER":"$USER" "$HOME/.docker" -R sudo chmod g+rwx "$HOME/.docker" -R

您可以选择一种方式赞助本站
支付宝扫一扫赞助
微信钱包扫描赞助
赏