726 字
4 分钟
服务器docker安装
安装前准备
更新系统并安装依赖
sudo apt-get update
sudo apt-get install -y \ ca-certificates \ curl \ gnupg \ lsb-release创建密钥目录
sudo mkdir -p /etc/apt/keyringsDocker 安装
注意:国内网络环境下无法直接访问 Docker 官方源,需使用国内镜像源(如阿里云)。
1. 清理旧的残留文件(可选)
如果之前安装失败过,先清理:
sudo rm -f /etc/apt/keyrings/docker.gpgsudo rm -f /etc/apt/sources.list.d/docker.list2. 下载 GPG 密钥(阿里云镜像)
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg3. 添加软件源(阿里云镜像)
echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null4. 更新软件列表
sudo apt-get update5. 安装 Docker Engine
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin6. 验证安装
docker --version
sudo docker run hello-world看到 “Hello from Docker!” 说明安装成功。
权限配置
添加用户到 docker 组(推荐)
# 创建 docker 组(通常已自动创建)sudo groupadd docker
# 将当前用户添加到 docker 组sudo usermod -aG docker $USER激活权限
权限修改后需要重新登录:
# 方法1:激活新组设置(当前会话临时生效)newgrp docker
# 方法2:重新登录 SSH
# 方法3:重启系统(最可靠)sudo reboot验证权限
# 查看当前用户所属组groups
# 测试(无需 sudo)docker run hello-world服务管理
启停服务
# 启动sudo systemctl start docker
# 停止sudo systemctl stop docker
# 重启sudo systemctl restart docker
# 查看状态sudo systemctl status docker开机自启
# 启用sudo systemctl enable docker
# 禁用sudo systemctl disable docker镜像加速配置
国内拉取镜像较慢,建议配置镜像加速器。
创建配置文件
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json > /dev/null <<EOF{ "registry-mirrors": [ "https://docker.mirrors.ustc.edu.cn", "https://hub-mirror.c.163.com", "https://mirror.ccs.tencentyun.com" ], "log-driver": "json-file", "log-opts": { "max-size": "100m", "max-file": "3" }}EOF应用配置
sudo systemctl daemon-reloadsudo systemctl restart docker验证配置
docker info | grep -A 5 "Registry Mirrors"常用命令速查
镜像操作
docker pull nginx:latest # 拉取镜像docker images # 查看本地镜像docker rmi nginx:latest # 删除镜像docker build -t myapp:v1 . # 构建镜像容器操作
docker run -d --name web nginx # 后台运行docker run -it ubuntu /bin/bash # 交互式运行docker ps # 查看运行中容器docker ps -a # 查看所有容器docker stop web # 停止容器docker start web # 启动容器docker rm web # 删除容器docker exec -it web /bin/bash # 进入容器docker logs web # 查看日志docker logs -f web # 实时查看日志系统清理
docker system df # 查看磁盘占用docker system prune # 清理未使用资源docker system prune -a # 清理所有未使用资源(含镜像)docker volume prune # 清理未使用卷常见问题
权限不足
Got permission denied while trying to connect to the Docker daemon socket解决:确认用户已加入 docker 组并重新登录。
镜像下载慢
解决:配置国内镜像加速器(见上文)。
服务无法启动
# 查看详细错误sudo journalctl -xu docker.service
# 检查配置文件语法sudo dockerd --validate