Tag: capistrano

Rails 4:为什么字体没有加载到生产中?

我无法在生产中的Rails 4应用程序中加载字体,它在开发中正常工作。 部署时,资产在服务器上进行预编译。 我有我的字体 app/assets/fonts 我的app.css: @font-face { font-family: ‘WalkwayBoldRegular’; src: url(‘Walkway_Bold-webfont.eot’); src: url(‘Walkway_Bold-webfont.eot?#iefix’) format(’embedded-opentype’), url(‘Walkway_Bold-webfont.woff’) format(‘woff’), url(‘Walkway_Bold-webfont.ttf’) format(‘truetype’), url(‘Walkway_Bold-webfont.svg#WalkwayBoldRegular’) format(‘svg’); font-weight: normal; font-style: normal; } 在我的production.rb中,我有: config.assets.precompile << Proc.new { |path| if path =~ /\.(eot|svg|ttf|woff)\z/ true end }

在EC2上部署Rails应用程序

在过去的一周里,我一直在玩橡胶gem,似乎无法让它发挥作用。 我已经决定手动设置我的EC2实例会更容易。 问题是我不知道怎么做。 谷歌也没有为新手提供太多帮助。 有什么建议? 真的很感激。

使用批处理脚本在Windows上启动瘦服务器的多个实例

我正在编写一个脚本,以便在Windows中的rails应用程序上自动部署ruby。 除了瘦集群启动之外,我拥有一切自动化function; 事实certificate,Windows不支持守护进程,所以在调用thin时我不能使用-servers命令。 我发布的上一个问题: 在Windows上启动Thin集群 我现在正在寻找另一种方法来以编程方式获取三个实例。 有谁知道我怎么能够做到这一点? 谢谢你的时间!

我如何使用冷冻Capistrano?

背景故事 我在Rails 2.1上并且需要将Capistrano gem冻结到我的供应商文件夹(因为我的主机已经打破了他们的cap gem依赖关系,我想让自己尽可能独立)。 在我的本地Windows机器上,我已经将以下内容放在我的环境中.rb config.gem “capistrano”, :version => “2.5.2” config.gem “net-ssh”, :lib => “net/ssh”, :version => “2.0.4” config.gem “net-scp”, :lib => “net/scp”, :version => “1.0.1” config.gem “net-sftp”, :lib => “net/sftp”, :version => “2.0.1” config.gem “net-ssh-gateway”, :lib => “net/ssh/gateway”, :version => “1.0.0” gem已经安装好了,所以我冻结了它们。 检查…… >rake gems … [F] capistrano = 2.5.2 [F] net-ssh = […]

Capistrano抛出/ usr / bin / env:ruby:执行deploy:migration时没有这样的文件或目录

我设置了Capistrano来部署我的应用程序。 我是按步骤制作的,所以首先我设置代码部署,所以我评论了所有角色,但是:app 。 我正在使用rvm ,我遇到了一些问题。 最大的问题是一个错误,说/usr/bin/env: ruby: No such file or directory 。 我使用gem capistrano/rvm解决了它们,并在capistrano/rvm要求它并将以下行添加到deploy.rb文件中: set :default_env, { path: “/usr/local/rvm/gems/ruby-2.0.0-p247@global/bin:$PATH” } 一旦代码部署正确运行,我就会激活de :db角色以执行迁移。 我得到了同样的错误,但这次我找不到解决方案。 ~$ cap production deploy:migrate … … INFO [85d6241d] Running bundle exec rake db:migrate on 10.10.51.10 DEBUG [85d6241d] Command: cd [PROJECT_SRC]/current && ( PATH=/usr/local/rvm/gems/ruby-2.0.0-p247@global/bin:$PATH RAILS_ENV=production bundle exec rake db:migrate ) DEBUG [85d6241d] […]

在capistrano部署之后运行rails应用程序

部署rails app第一次抛出Capistrano :我在另一台机器(服务器)上部署了我的rails应用程序 rails app的文件结构 ## this is my server akshay@akshay:/var/www/model_demo$ ls current releases repo revisions.log shared cap -T ## showing a lots of rake task 喜欢 cap deploy:migrate # Runs rake db:migrate if migrations are set 如果我执行这项任务,那就不行了 Stage not set, please call something such as `cap production deploy`, where production is a stage you […]

使用Bundler和Capistrano进行部署时出现问题

我正在使用Ruby on Rails 3.1.0和Capistrano gem。 正如Bundler官方文档中的“使用Capistrano自动部署”部分所述,我在deploy.rb文件的顶部添加了deploy.rb require ‘bundler/capistrano’ 。 现在,当我运行cap deploy:migrations命令(部署并运行挂起的迁移)时,我收到以下错误: … * executing “cd //releases/20111026132212 && bundle install –gemfile //releases/20111026132212/Gemfile –path //shared/bundle –deployment –quiet –without development test” servers: [“”] [] executing command ** [out :: ] Some gems seem to be missing from your vendor/cache directory. ** [out :: ] Could not find libv8-3.3.10.2 […]

使用ubuntu ec2实例的capistrano在rails上部署ruby

我正在尝试使用Capistrano在rails应用程序上实现ruby,我在staging服务器中运行apache rvm,在生产服务器中运行nginx REE版本。 我也在使用git。 我一直试图整合Capistrano,但我收到了这个错误 (Net::SSH::AuthenticationFailed: ubuntu) 这是我的deploy.rb文件 set :application, “capify” # The directory on the EC2 node that will be deployed to set :deploy_to, “/home/ubuntu/apps/#{application}” set :keep_releases, 3 # deploy with git set :scm, :git set :repository, “git@github.com:username/capify.git” set :git_shallow_clone, 1 set :branch, “master” set :use_sudo, false set :user, “ubuntu” ssh_options[:keys] = [“/path/tp/key.pem”] ssh_options[:forward_agent] […]

如何在capistrano中存储秘密变量

我正在编写一个使用Capistrano自动部署的Rails应用程序。 在deploy.rb脚本中,我有: set :deploy_to, ‘/my/deploy/path/’ 在production.rb我有: server ‘example.com’, user: ‘secret_user_name’, roles: %w{web app db} 目前该应用程序是私有的。 但假设我想要一个像这样的开源应用程序。 然后我不希望secret_user_name和/my/deploy/path存储在repo中。 在Rails项目中,如果我遇到这样的问题,我会将秘密值存储在secrets.yml并从那里访问它们。 但是我无法访问Capistrano的secrets.yml。 所以我可以手动加载秘密文件,但我确信有更好的方法来做到这一点。 所以我的问题是:如何在不使用Capistrano暴露服务器信息的情况下实现自动部署流程? 是否有推荐的方法来存储Rails中的秘密?

EC2 – 无法部署为“bitnami”用户

我正在使用Capistrano将Rails应用程序部署到Amazon EC2。 在部署文件中,我有以下凭据连接到Amazon EC2: set :user, “bitnami” #set :user, “root” server “ec2-XX-XXX-XXX-XX.compute-1.amazonaws.com”, :app, :web, :db, :primary => true ssh_options[:keys] = [“/Users/ada/my_amazon_ec2.pem”] 当我运行cap deploy:setup和cap deploy:check ,我得到以下信息: The following dependencies failed. Please check them and try again: –> You do not have permissions to write to `/www/myapp’. (ec2-XX-XXX-XXX-XX.compute-1.amazonaws.com) –> You do not have permissions to write to […]