我正在制作一个以Vue.js作为前端而Rails作为后端的应用程序,在开发和生产中使用docker运行所有内容。
在开发中,我可以使用localhos访问服务:8080(前端)并使用localhost:5678(rails port)向后端URL发出请求。
但是当我将其部署到生产中时,有一个域名(www.websiteurl.com),我可以查看前端但无法访问后台,我无法提出任何请求。
我尝试向www.websiteurl.com:5678发出请求但没有任何反应,我如何使用域名访问后端端口?
ps1:对不起,如果问题不够明确,请随时提出任何问题 ps2:我在后端正确设置了CORS访问权限 ps3:如果我通过IP访问生产服务器,它可以正常工作,问题是当我通过域名访问时
更新: 用于运行前端的命令:
docker build -t runaterra:ekko .
docker run -d \
-w /runaterra-ekko/ \
-p 80:8080 \
--name ekko \
--restart unless-stopped \
runaterra:ekko npm run dev
用于运行后端的命令:
docker-compose up -d --restart unless-stopped db
docker-compose build app
docker-compose run --rm app rake db:migrate
docker-compose up -d --restart unless-stopped app
答案 0 :(得分:1)
您没有将应用的端口5678暴露给互联网。