【问题标题】:After installing rails, how to run rails server on amazon ec2 instance?安装 rails 后,如何在 amazon ec2 实例上运行 rails server?
【发布时间】:2013-04-29 08:51:20
【问题描述】:

我在 amazon AMI 上的一个实例上安装了 rails。我安装了 rails 的所有依赖项。我什至通过scp复制了代码。当我 ssh 到我运行的实例时

rails s

服务器正在运行。如何从浏览器中查看它? 来自公共 DNS ???

【问题讨论】:

    标签: ruby-on-rails amazon-web-services amazon-ec2


    【解决方案1】:

    总而言之,确保您的安全组具有 TCP 3000 的规则。然后,您可以使用公共 DNS:

    rails 服务器 -b ec2-XX-XX-XX-XX.us-west-2.compute.amazonaws.com -p 3000

    并访问:ec2-XX-XX-XX-XX.us-west-2.compute.amazonaws.com:3000

    这对我有用。

    【讨论】:

    • 是的,需要将EC2实例的内部IP地址传递给-b标志:rails server -b xxx.xxx.xxx.xxx
    【解决方案2】:

    您的亚马逊 ec2 实例有一个公共 IP 地址和域名,请参阅 http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-instance-addressing.html

    在浏览器中使用此域名作为 URL。

    您还必须在实例的安全组中设置入站流量/端口连接。

    警告:使用“rails s”,您正在启动 webrick,这是一个仅用于开发的服务器。您可能应该使用像 apache + mod_passenger 这样的生产服务器。

    有关 ec2 和 ruby​​ on rails 的更高级用法,请参阅

    http://railscasts.com/episodes/347-rubber-and-amazon-ec2?view=asciicast

    【讨论】:

    • 解决方法是在实例的安全组中更改入站端口连接。
    • 我仍然遇到无法连接的问题。我已更改安全规则以允许所有流量。还有其他设置吗?
    • 只需更改您的入站流量设置。
    【解决方案3】:

    从rails应用移动到文件夹并输入rails s -b 0.0.0.0

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-04-04
      • 1970-01-01
      • 2017-09-22
      • 1970-01-01
      • 2013-01-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多