我在电脑里做的事情。我正在提供我的docker-compose文件
版本:“3”服务: 网站: 图片:ecdavis15 / TSN </跨度> -网络服务器 端口: - “3000:3000” 链接: - 应用程序 app : 图片:ecdavis15 / TSN </跨度> -app服务器 端口: - “3030:3030” 链接: - 蒙戈 蒙戈: 图像:mongo 端口: - “27017:27017” 卷: - ./data/db:/data/db
在我的网站
由于您进行Ajax调用,它将由客户端而非服务器端的浏览器发送。所以当你拨打电话时 <IP>:3000 至 app:3030 对于API,您的浏览器不知道应用程序是什么。所以你可以做的事情很少
<IP>:3000
app:3030
的 / etc / hosts文件 强>
<IP> app
然后当您使用浏览应用程序时 app:3000 , app:3030 将自动指向正确的地址。
app:3000
你可以使用javascript来获取你应该用于api的url
document.location.scheme + "://" + document.location.hostname + ":3030"
您可以创建nginx反向代理
location / { proxy_pass http://localhost:3000; location /api { proxy_pass http://localhost:3030; } }
这将需要您的代码文件中的一些更改,以便您使用 /api
/api