Docker服务未运行
权限问题
环境变量配置错误
网络配置问题
Docker安装不完整或损坏
系统资源不足
# 检查Docker服务状态
sudo systemctl status docker
# 如果未运行,启动Docker服务
sudo systemctl start docker
# 设置开机自启
sudo systemctl enable docker
# 将当前用户加入docker组
sudo usermod -aG docker $USER
# 应用组更改(需要重新登录或执行)
newgrp docker
# 检查是否生效
groups
# 检查DOCKER_HOST环境变量
echo $DOCKER_HOST
# 如果设置了错误的DOCKER_HOST,可以取消设置
unset DOCKER_HOST
# 检查防火墙状态
sudo ufw status
# 临时关闭防火墙(仅用于测试)
sudo ufw disable
# 检查代理设置
env | grep -i proxy
# 卸载现有Docker
sudo apt-get purge docker-ce docker-ce-cli containerd.io
# 清理残留文件
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd
# 重新安装Docker
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
# 检查可用内存
free -h
# 检查磁盘空间
df -h
# 清理Docker占用空间
docker system prune -a
# 查看Docker守护进程日志
journalctl -u docker.service -n 50 --no-pager
sudo dockerd --debug
docker info | grep "Storage Driver"
sudo systemctl stop docker
sudo rm -rf /var/lib/docker/*
sudo systemctl start docker
错误1: Cannot connect to the Docker daemon
# 解决方案
sudo systemctl start docker
sudo usermod -aG docker $USER
newgrp docker
错误2: permission denied while trying to connect to the Docker daemon
# 解决方案
sudo chmod 666 /var/run/docker.sock
# 或更好的方式是将用户加入docker组(如上所述)
错误3: Docker daemon not running
# 解决方案
sudo systemctl restart docker
# 如果持续失败,检查日志
journalctl -u docker.service
错误4: No space left on device
# 解决方案
docker system prune -a
# 或增加存储空间
通过以上步骤,大多数Docker命令无法使用的问题都能得到解决。如果问题仍然存在,建议查阅Docker官方文档或社区支持。