【问题标题】:How to run seed.rb file on Amazon ec2如何在 Amazon ec2 上运行 seed.rb 文件
【发布时间】:2013-06-18 09:04:47
【问题描述】:

最近,我使用Elastic Beanstalk 在 Amazon EC2 上托管了我的 Ruby on Rails 应用程序。除了我的seeds.rb 文件外,一切正常。我的seeds.rb 文件在托管时没有执行。我也在使用ActiveAdmin,我在我的seeds.rb 文件中定义了第一个管理员。

如何通过 rails 控制台在亚马逊上创建第一个管理员用户? 有什么方法可以在 Amazon EC2 上打开 Rails 控制台? 我正在尝试使用 putty 执行此操作,但不知道如何执行此操作。请给我一些指示..

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3 amazon-web-services amazon-ec2 amazon-elastic-beanstalk


    【解决方案1】:

    你不应该做这样的事情吗?

    # .ebextensions/bundles_container.config
    container_commands:
      01-bundle-install:
        command: "bundle install"
        leader_only: true
      02-bundle-db-migrate:
        command: "bundle exec rake db:migrate"
        leader_only: true
      03-bundle-db-seed:
        command: "bundle exec rake db:seed RAILS_ENV='staging'"
        leader_only: true
    

    如果需要,您还可以传递参数,或者将所有这些命令与“cmd1 && cmd2”结合起来。

    【讨论】:

    • 为我节省了很多时间。 +1
    【解决方案2】:

    您需要创建密钥对才能访问亚马逊实例(我认为您已经拥有)。确保在当前选定的安全组中启用了 ssh 访问。

    您可以使用

    连接到亚马逊实例

    ssh -i path/to/keypair.pub ec2-user@ec2-an-ip-address.compute-1.amazonaws.com

    然后 cd 进入应用程序目录并运行 bundle exec rake db:seed RAILS_ENV='staging' 假设您正在暂存环境中运行应用程序。

    【讨论】:

    • 我通过 SSH 成功登录。现在它显示像这样[ec2-user@ip-10-28-206-117 ~]$ 但我不知道我的应用程序目录路径。我尝试运行ls 命令,但没有显示任何内容。
    • 不工作,显示错误-bash: cd: /var/www: No such file or directory
    • 您使用的是什么服务器?乘客?
    • 检查这两个目录../etc/apache2/sites-enabled/etc/nginx/sites-enabled 您将能够在这两个目录中找到配置文件..从那里您可以检查应用程序的位置
    • 等目录工作,但之后没有找到这样的文件和目录。
    【解决方案3】:

    如果您在这里并且上述解决方案对您不起作用。

    除了使用 benchwarmer 在上面这个答案中提供的命令之外:

    https://stackoverflow.com/a/17232607/1216245

    我必须运行为主密钥和所有 rds 设置提供环境变量的种子命令。

    bundle exec rake db:seed RAILS_ENV=production RAILS_MASTER_KEY=<your master key> RDS_HOSTNAME=<your rds hostname> RDS_PASSWORD=<...> RDS_USERNAME=<...> RDS_DB_NAME=<...> RDS_PORT=<...>

    终于成功了:)

    您可以在 AWS 控制台(仪表板)的环境配置面板中检查所有这些内容。

    【讨论】:

      猜你喜欢
      • 2012-05-22
      • 1970-01-01
      • 2017-12-02
      • 1970-01-01
      • 2012-05-09
      • 2016-03-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多