在Linux bashrc配置全局代理导致etcd连接失败

博主在Ubuntu上面通过Docker安装了etcd,结果一直连接失败:
最后发现竟然是clash代理导致的问题。由于博主在 ~/.bashrc 中设置了全局代理,通过 export 命令将环境变量(如 HTTP_PROXY)写入当前 shell 环境。这会导致所有通过该 shell 启动的进程 ,包括 etcd 服务端和客户端,都会继承这些代理设置,也就是说这些环境变量会被 Docker 继承 ,除非在 docker rundocker-compose.yml 中明确覆盖或删除它们。etcd 容器内部会尝试通过这些代理地址访问集群节点(包括 localhost127.0.0.1、容器 IP),但代理根本不会转发这些内部流量,于是就会出现问题:

  • 客户端连接超时
  • 节点间通信失败
  • 集群无法选举 Leader
相关推荐
奔跑的架构师5 小时前
[A-50]ARMv9/v8-DVFS系统架构
linux·arm开发·架构·系统架构·arm
迷途呀5 小时前
CI/CD 自动化部署实践:让代码提交后自动上线
linux·运维·nginx·ci/cd·自动化
赴生-5 小时前
Liunx 操作系统 进程概念(上)
linux
binqian6 小时前
【linux】OpenSSH升级文档
linux·运维·网络
吴声子夜歌6 小时前
Shell编程——if条件语句
linux·运维·shell
Dawn-bit6 小时前
Linux 运维基础扩展:跳板机、堡垒机与物理服务器全流程
linux·运维·服务器·云计算·运维开发
新时代牛马6 小时前
Linux 定时任务:crontab、anacron 与systemd timer
linux·运维·服务器
mounter6257 小时前
Linux 7.2 引入更灵活的块设备错误注入机制
linux·linux kernel·kernel·disk·error injection
cpolar技术支持7 小时前
Docker 容器启动失败怎么查?端口、日志、权限与网络排障完整教程
linux·docker·容器·cpolar·网络排障
布莱克6058 小时前
Linux 常用命令详解:从入门到实战
linux·运维·服务器