Ubuntu安装Laravel9遇Docker代理问题,proxy.example.com该如何设置?
问题:Ubuntu安装Laravel 9时Docker代理相关错误及配置疑问
在Ubuntu系统中安装Laravel 9过程中遇到一系列Docker相关错误,三次尝试情况如下:
- 尝试1:执行
curl -s https://laravel.build/example-app | bash时,Docker报错:Get "https://registry-1.docker.io/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers),同时无法创建example-app目录及执行sail命令。 - 尝试2:切换至移动网络后,报错:
Error response from daemon: Get "https://registry-1.docker.io/v2/": proxyconnect tcp: dial tcp: lookup proxy.example.com: no such host。 - 尝试3:设置
Environment=no_proxy=localhost,127.0.0.1并修改DNS为nameserver 8.8.8.8 nameserver 8.8.4.4后,出现证书错误:x509: certificate is valid for .orchardmile.com, orchardmile.com, not registry-1.docker.io。
已查阅Docker官方文档及Stack Overflow相关方案,现疑问:Docker配置文件中的proxy.example.com是否需要替换为公司网关/代理地址,还是保留原样?
回答:
proxy.example.com是官方文档里的占位符,必须替换成你公司实际使用的代理/网关地址,绝对不能保留原样。
原因及后续建议:
- 你尝试2中出现的
lookup proxy.example.com: no such host错误,本质就是Docker在尝试解析这个不存在的占位域名,导致代理连接失败。替换成真实代理地址后,才能正常建立代理连接。 - 针对尝试3的证书错误:如果公司代理使用了自签名证书,需要将该证书添加到Docker的信任证书列表中,避免Docker验证
registry-1.docker.io证书时出现不匹配问题。 - 保持
no_proxy配置包含localhost,127.0.0.1,确保本地服务(比如Laravel Sail的容器)不会走代理,避免额外的连接问题。
内容的提问来源于stack exchange,提问作者che
相关产品推荐
相关产品推荐

