docker容器中报错curl: (7) Connection refused
·
前言:
笔者使用docker作为自己的本地开发环境(使用docker-compose作为部署工具),在使用laravel+passport作为自己的接口API认证。发现了一个神奇的问题:在设置nginx的项目conf文件,项目设置一个虚拟域名api.test。这时候请求api.test/oauth/token是可以请求的,但是通过获取后的token再去请求其他接口的时候却一直报500:Unauthenticated错误。使用本地ip192.168.0.XXX却没有这个问题
原因:
请求接口发生在docker容器内部,这时候无法识别api.test这个虚拟域名。
解决:
docker-compose可以直接在php容器配置里新增extra_hosts属性
extra_hosts:
# - api.payment.test:10.0.75.2
# - api.payment.test:127.0.0.1
- api.payment.test:192.168.0.159
如果不是使用docker-compose,需要手动进入php容器并
cd /etc
vim hosts
写入 192.168.0.159 api.payment.test
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)