1. 更新系统包
sudo apt update
sudo apt upgrade -y
2. 安装依赖包
apt install curl vim wget gnupg dpkg apt-transport-https lsb-release ca-certificates
3. 添加Docker官方GPG密钥
添加阿里云的GPG密钥
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
或者添加官方的GPG密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
4. 添加Docker仓库
将阿里云的APT仓库添加到系统中:
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
或者官方的APT仓库
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
5. 更新APT包索引
更新APT包索引以包含Docker仓库中的包:
sudo apt update
6. 安装Docker
安装Docker CE(社区版):
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
7. 启动并启用Docker服务
启动Docker服务并设置为开机自启:
sudo systemctl start docker
sudo systemctl enable docker
8. 验证安装
验证Docker是否安装成功:
sudo docker --version
你应该会看到类似以下的输出:
Docker version 20.10.12, build e91ed57
9. 添加用户到Docker组(可选)
为了避免每次使用Docker时都需要sudo
,可以将当前用户添加到docker
组:
sudo usermod -aG docker $USER
然后,注销并重新登录以使更改生效。
10.更换 DNS 服务器
编辑 /etc/resolv.conf
,添加可靠 DNS:
nameserver 8.8.8.8
nameserver 114.114.114.114
11.配置代理
- 创建代理配置文件
sudo mkdir -p /etc/systemd/system/docker.service.d
sudo nano /etc/systemd/system/docker.service.d/http-proxy.conf
添加内容(注意协议为 http://
):注意HTTPS_PROXY
也是http,没有s
[Service]
Environment="HTTP_PROXY=http://127.0.0.1:7897"
Environment="HTTPS_PROXY=http://127.0.0.1:7897"
- 重启 Docker 服务
sudo systemctl daemon-reload
sudo systemctl restart docker
- 验证配置生效
systemctl show docker --property Environment
# 预期输出:
# Environment=HTTP_PROXY=http://127.0.0.1:7897 HTTPS_PROXY=http://127.0.0.1:7897
12. 测试Docker
运行一个简单的Docker容器来测试安装是否成功:
docker run hello-world
如果一切正常,你应该会看到一条欢迎信息,表示Docker已经成功安装并运行。
如果报错:这个错误表明当前用户没有权限访问 Docker 守护进程。通常,Docker 需要 root 权限或用户必须属于
docker
组才能运行 Docker 命令ubuntu@ip-172-31-23-31:~$ sudo usermod -aG docker $USER ubuntu@ip-172-31-23-31:~$ docker run hello-world docker: permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Head "http://%2Fvar%2Frun%2Fdocker.sock/_ping": dial unix /var/run/docker.sock: connect: permission denied. See 'docker run --help'. ubuntu@ip-172-31-23-31:~$
可能是使用ssh连接服务器,重新登录以应用组更改即可