Debian系统Docker常见问题及解决方案
containerd.io或docker-ce-cli)。可使用sudo apt install -f命令自动修复依赖关系,该命令会尝试安装缺失的依赖包。/etc/apt/sources.list文件,添加Debian对应的Docker仓库(如deb [arch=amd64] https://download.docker.com/linux/debian bookworm stable),然后运行sudo apt update刷新软件包列表。sudo systemctl status docker检查服务状态,若未运行,可通过sudo systemctl start docker启动服务,并用sudo systemctl enable docker设置开机自启。docker.sock文件丢失或权限错误。可尝试重启Docker服务(sudo systemctl restart docker)自动重建该文件;若权限问题,将当前用户加入docker组(sudo usermod -aG docker $USER),注销后重新登录即可。df -h查看磁盘空间、docker stats查看容器资源占用),若磁盘空间不足,需清理旧镜像(docker image prune)或扩容磁盘;若内存不足,可关闭非必要进程或增加Swap空间。docker命令提示“command not found”,可能是/usr/bin不在$PATH环境变量中。可通过echo $PATH检查路径,临时添加路径(export PATH=$PATH:/usr/bin)或编辑~/.bashrc文件(添加export PATH=$PATH:/usr/bin)永久生效。docker命令需要root权限。可将当前用户加入docker组(sudo usermod -aG docker $USER),注销后无需sudo即可使用docker命令。ping google.com失败),需检查Docker网络配置(docker network ls查看网络列表、docker network inspect <network_name>查看详情)、主机防火墙规则(如ufw是否阻止Docker端口)及DNS设置(/etc/docker/daemon.json中配置"dns": ["8.8.8.8", "8.8.4.4"])。docker run -p 80:80 nginx失败),需检查主机端口占用情况(sudo netstat -tuln | grep 80),释放冲突端口或修改容器端口映射(如-p 8080:80)。/etc/docker/daemon.json是Docker的核心配置文件,若格式错误(如缺少逗号、引号)会导致Docker无法启动。可通过sudo nano /etc/docker/daemon.json编辑文件,确保JSON格式正确(如{"log-level": "info", "storage-driver": "overlay2"}),修改后重启Docker服务(sudo systemctl restart docker)。nvidia-container-toolkit。执行sudo apt-get install -y nvidia-container-toolkit安装后,重启Docker服务(sudo systemctl restart docker),并通过--gpus all参数运行容器(如docker run --rm --gpus all nvidia/cuda:11.0.3-base-ubuntu20.04 nvidia-smi)验证GPU是否可用。overlay或aufs等内核模块,若模块未加载,会导致容器无法启动。可通过modinfo overlay和modinfo aufs检查模块是否存在,若不存在,需重新编译内核或安装对应模块(如sudo apt install linux-image-extra-$(uname -r))。