hey folks Tôi đang gặp vấn đề khi triển khai ứng dụng đường ray 3.2.6 của tôi vào sản xuất, triển khai có vẻ ổn cho đến khi nó được để precompiling tài sản ở đây là lỗi tôi nhận được:Triển khai để sản xuất trong Rails 3.2.6 với Twitter-Bootstrap-Rails
command finished in 1740ms
* executing "cd /home/deployer/apps/stealthygecko/releases/20120717222341 && bundle exec rake RAILS_ENV=production RAILS_GROUPS=assets assets:precompile"
servers: ["xx.xxx.xxx.xxx"]
[xx.xxx.xxx.xxx] executing command
** [out :: xx.xxx.xxx.xxx] rake aborted!
** [out :: xx.xxx.xxx.xxx] no such file to load -- addressable/uri
** [out :: xx.xxx.xxx.xxx]
** [out :: xx.xxx.xxx.xxx] (See full trace by running task with --trace)
command finished in 3131ms
*** [deploy:update_code] rolling back
* executing "rm -rf /home/deployer/apps/stealthygecko/releases/20120717222341; true"
servers: ["xx.xxx.xxx.xxx"]
[xx.xxx.xxx.xxx] executing command
command finished in 786ms
failed: "rvm_path=$HOME/.rvm/ $HOME/.rvm/bin/rvm-shell '[email protected]_rewrite' -c 'cd /home/deployer/apps/stealthygecko/releases/20120717222341 && bundle exec rake RAILS_ENV=production RAILS_GROUPS=assets assets:precompile'"
tôi đã cố gắng thiết lập "config.assets.compile = false" để xem nếu điều này giúp nhưng tôi vẫn nhận được lỗi tương tự.
đây là kịch bản triển khai của tôi:
server "xx.xxx.xxx.xxx", :web, :app, :db, primary: true
depend :remote, :gem, "bundler", ">=1.1.3"
depend :remote, :gem, "rake", ">=0.9.2.2"
set :application, "stealthygecko"
set :user, :"deployer"
set :deploy_to, "/home/#{user}/apps/#{application}"
set :deploy_via, :remote_cache
set :use_sudo, false
set :scm, :git
set :repository, "[email protected]:StealthyGecko/stealthygecko.git"
set :branch, "master"
default_run_options[:pty] = true
set :ssh_options, {:forward_agent => true}
set :ruby_version, "ruby-1.9.2"
set :gemset_name, "stealthygecko_rewrite"
set :rvm_ruby_gemset, "#{ruby_version}@#{gemset_name}"
set :bundle_without, [:darwin, :development, :test]
require "rvm/capistrano"
load 'deploy/assets'
set :rvm_ruby_string, "#{rvm_ruby_gemset}" # Select the gemset
set :rvm_type, :user # RVM install is in the deploying user's home directory
#
before "deploy:assets:precompile", "bundle:install"
after "deploy", "deploy:cleanup" # keep only the last 5 releases
namespace :deploy do
%w[start stop restart].each do |command|
desc "#{command} unicorn server"
task command, roles: :app, except: {no_release: true} do
run "cd #{deploy_to}/current && /etc/init.d/unicorn_stealthygecko restart"
end
end
task :setup_config, roles: :app do
puts "Symlinking nginx and unicorn configs"
sudo "ln -nfs #{current_path}/config/nginx.conf /etc/nginx/sites-enabled/#{application}"
sudo "ln -nfs #{current_path}/config/unicorn_init.sh /etc/init.d/unicorn_#{application}"
run "mkdir -p #{shared_path}/config"
put File.read("config/database.example.yml"), "#{shared_path}/config/database.yml"
puts "Now edit the config files in #{shared_path}."
end
after "deploy:setup", "deploy:setup_config"
task :symlink_config, roles: :app do
puts "Symlinking database yml"
run "ln -nfs #{shared_path}/config/database.yml #{release_path}/config/database.yml"
puts "Database Symlink done!"
end
after "deploy:finalize_update", "deploy:symlink_config"
desc "Make sure local git is in sync with remote."
task :check_revision, roles: :web do
unless `git rev-parse HEAD` == `git rev-parse origin/master`
puts "WARNING: HEAD is not the same as origin/master"
puts "Run `git push` to sync changes."
exit
end
end
before "deploy", "deploy:check_revision"
end
Xin lỗi nếu nó là một chút của một mớ hỗn độn của mình gom góp từ Tutorials khác nhau tôi đọc lên trên. Và đây là Gemfile tôi:
source 'http://rubygems.org'
gem 'rake'
gem 'rails', '3.2.6'
gem 'mysql2'
gem 'bcrypt-ruby', '~> 3.0.0'
gem 'gravtastic'
gem "friendly_id"
gem "rinku", '~>1.2.2', :require => 'rails_rinku'
gem "videawesome"
gem "will_paginate", "~>3.0.3"
gem "tweet-button"
gem "bitly"
gem "sanitize"
gem "newrelic_rpm"
gem 'capistrano'
gem 'rvm-capistrano'
gem "unicorn", "~> 4.2.1"
gem "twitter", "2.2.2"
gem 'instagram', :git => 'git://github.com/StealthyGecko/instagram-ruby-gem-lee.git'
group :assets do
gem 'coffee-script'
gem 'jquery-rails'
gem 'uglifier'
gem 'therubyracer'
gem 'execjs'
gem 'twitter-bootstrap-rails'
end
gem 'rspec-rails', :group => [:test, :development]
group :test do
gem 'sqlite3'
gem 'guard-rspec'
gem 'capybara'
gem 'launchy'
gem 'shoulda', '3.0.0.beta2'
gem 'factory_girl_rails'
gem 'ruby-debug19', :require => 'ruby-debug'
gem 'turn', :require => false
end
Tôi biết một chút một shot dài nhưng nếu có ai có thể nhận ra nơi tôi sẽ sai hoặc nếu có ai đã đưa ra chống lại vấn đề này và được quản lý để giải quyết nó xin vui lòng cho tôi biết như tôi đã đập đầu của tôi chống lại vấn đề này trong một vài giờ ngay bây giờ.
khi nó không thành công của nó dường như nói "không có tập tin để tải - địa chỉ/uri" Tuy nhiên tôi không chắc chắn nơi này đang được sử dụng và tại sao nó được sử dụng đối với tài sản biên soạn
bất kỳ đề xuất?
Là nội dung com pilation trên máy chủ bằng cách sử dụng bundler để biên dịch trước? Có vẻ như vấn đề tải phụ thuộc. – joshnesbitt
yeah nó là, hoặc ít nhất nó đã được triển khai cuối cùng –