【发布时间】:2017-06-06 19:50:02
【问题描述】:
我正在制作一个以 Vue.js 作为前端,Rails 作为后端的应用程序,一切都在开发和生产中使用 docker 运行。
在开发中,我可以使用 localhost:8080(前端)访问服务,并使用 localhost:5678(rails 端口)向后端 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
【问题讨论】:
-
能否添加您用来运行容器映像的 docker 命令?
-
您可能遇到了防火墙问题,请确保端口
5678已打开并在您的服务器上通过 -
我用命令更新了问题,我会检查端口是否打开
标签: ruby-on-rails docker vue.js frontend backend