来自内部 docker 容器的 cURL 同一服务器
cURL same server from a inside docker container
我看到了很多类似的问题,但并不完全像我的...
我有一个经典的架构,
一个带有 docker 的服务器,一个带有 Traefik 的堆栈来分派请求,
和几叠 nginx/apache 和 php。比方说
- website1.com
- website2.com
问题是我无法从 docker 容器内卷曲另一个网站。
如果我尝试从服务器本身卷曲
curl -v website2.com
curl -v https://website2.com
我收到有效回复
如果我尝试从 website1 容器卷曲
curl -v website2.com
curl -v https://website2.com
我能看到
Trying XX.XX.XX.XX:443...
使用我的外部 IP(因此 DNS 应该没问题)但我没有收到任何响应,因此它以超时消息结束。
如果我将 192.168.48.4 website2.com
添加到我的 /etc/hosts
中并尝试 cURL,我会得到一个有效的响应,但如果我错了,请告诉我,但在这种情况下,它是通过本地而不是从服务器外
顺便说一句,我需要从一个“管理器”网站 cURL,该网站从 API 获取所有域,因此 cURL 应该是动态的,我不能真正将所有 IP 手动添加到主机文件中或者随便什么
我真的很想从外部访问其他容器,比如外部服务
你有什么建议吗?
谢谢大家
感谢您的评论,特别是针对此主题的评论 https://community.traefik.io/t/curl-from-container-a-to-b-blocked/1040/14
就我而言,主机的防火墙 (ufw) 正在“阻止”我的 http/https 请求,即使我的域可以访问
这些命令解决了我的问题
sudo ufw allow http
sudo ufw allow https
我看到了很多类似的问题,但并不完全像我的... 我有一个经典的架构,
一个带有 docker 的服务器,一个带有 Traefik 的堆栈来分派请求, 和几叠 nginx/apache 和 php。比方说
- website1.com
- website2.com
问题是我无法从 docker 容器内卷曲另一个网站。
如果我尝试从服务器本身卷曲
curl -v website2.com
curl -v https://website2.com
我收到有效回复
如果我尝试从 website1 容器卷曲
curl -v website2.com
curl -v https://website2.com
我能看到
Trying XX.XX.XX.XX:443...
使用我的外部 IP(因此 DNS 应该没问题)但我没有收到任何响应,因此它以超时消息结束。
如果我将 192.168.48.4 website2.com
添加到我的 /etc/hosts
中并尝试 cURL,我会得到一个有效的响应,但如果我错了,请告诉我,但在这种情况下,它是通过本地而不是从服务器外
顺便说一句,我需要从一个“管理器”网站 cURL,该网站从 API 获取所有域,因此 cURL 应该是动态的,我不能真正将所有 IP 手动添加到主机文件中或者随便什么
我真的很想从外部访问其他容器,比如外部服务
你有什么建议吗? 谢谢大家
感谢您的评论,特别是针对此主题的评论 https://community.traefik.io/t/curl-from-container-a-to-b-blocked/1040/14
就我而言,主机的防火墙 (ufw) 正在“阻止”我的 http/https 请求,即使我的域可以访问
这些命令解决了我的问题
sudo ufw allow http
sudo ufw allow https