Ubuntu运行docker run hello-world报无法连接2375端口Docker守护进程
故障根因
~/.bashrc中配置的DOCKER_HOST=tcp://0.0.0.0:2375环境变量强制Docker客户端走TCP地址连接服务端,但Ubuntu默认安装的Docker daemon默认仅监听本地Unix域套接字unix:///var/run/docker.sock,未开启2375端口的TCP监听,因此客户端发起连接时直接被拒绝。
修复步骤
- 清理错误环境变量配置
编辑~/.bashrc文件,删除其中export DOCKER_HOST=tcp://0.0.0.0:2375的配置行。 - 重载配置清除当前会话残留
执行以下命令让修改后的bashrc生效,同时清除当前终端中已加载的错误环境变量:source ~/.bashrc unset DOCKER_HOST - 检查Docker daemon运行状态
执行命令查看服务状态:
如果服务未处于运行状态,执行命令启动服务并配置开机自启:sudo systemctl status dockersudo systemctl enable --now docker执行docker相关命令如果提示权限不足,需要将当前用户加入docker用户组,重新登录后即可免sudo执行:
sudo usermod -aG docker $USER - 功能验证
重新执行测试命令,确认返回正常结果:docker run hello-world
补充说明
如果你有远程访问Docker daemon的需求,必须先修改Docker daemon的启动配置开启2375端口监听,不能仅在客户端配置环境变量。注意2375端口默认无身份认证机制,禁止直接暴露在公网,否则会存在服务器被入侵的风险。
内容的提问来源于stack exchange,提问作者swapn652
相关产品推荐
相关产品推荐

