主页

在docker里面启动了rails项目,但是在浏览器打开却一直显示:链接失败,Firefox 无法建立到 localhost:3000 服务器的连接。

2025-11-17 06:16PM

我有一个项目是rails项目是放在了docker里面,在docker里面使用bundle exec rails server -b 0.0.0.0 -p 9903已经启动了,但是在浏览器访问localhost:9903确提示

报错内容如下:

连接失败

Firefox 无法建立到 localhost:3000 服务器的连接。

    此站点暂时无法使用或者太过忙碌。请过几分钟后再试。
    如果您无法加载任何网页,请检查您计算机的网络连接状态。
    如果您的计算机或网络受到防火墙或者代理服务器的保护,请确认 Firefox 已被授权访问网络。

解决方法:

主要是因为我在 docker-compose.yml 中没有增加 ports 的配置,没有将容器的3000端口映射到宿主机

backend_system_admin:
  container_name: 'backend_system_admin'
  build: ../backend_system_admin
  volumes:
    - ../backend_system_admin:/opt/app
    - ../images:/opt/app/images
  # 取消注释这行来启动 Rails 服务器
  command: ["sh", "-c", "echo 'starting backend_system_admin...' && cd /opt/app && pwd && rm tmp/pids/* -rf && echo '正式启动' && bundle exec rails s -p 9903 -b 0.0.0.0"]
  # 添加端口映射
  ports:
    - "9903:9903"
  environment:
    - DATABASE_HOST=mysql
    - DATABASE_USERNAME=root
    - DATABASE_PASSWORD=666666
    - DATABASE_NAME=test
    - COMMUNICATOR_REDIS_URL=redis://exchange_redis:6379/3
    - MATCHER_REDIS_URL=redis://exchange_redis:6379/1
    - REDIS_URL=redis://exchange_redis:6379
    - REDIS_PASSWORD=""
  networks:
    - exchange-network

然后再重启docker-compose,浏览器就可以正常访问lcoalhsot:3000了

返回>>

登录

请登录后再发表评论。

评论列表:

目前还没有人发表评论