मैंने अपने सर्वर को रूबी 2.1.1 में अपडेट किया और मैं अपने सर्वर पर तैनाती के लिए Capistrano का उपयोग कर रहा हूं। हालांकि जब मैं तैनाती करता हूं, मुझे विभिन्न त्रुटियां मिलती हैं। जब मैं अपने तैनाती कोड के साथ खेलता हूं तो हर बार बदलता रहता है। मेरे पास वर्तमान मुद्दा है।बंडल: अनुमति अस्वीकार
अद्यतन/NEW ISSUE
rvm और गहरे लाल रंग का फिर से स्थापित करने के बाद मैं अब तैनाती पर विभिन्न मुद्दों भर में आ रहा हूँ। वर्तमान में मेरी deploy.rb फ़ाइल यहां है।
require "bundler/capistrano"
require "rvm/capistrano"
set :rvm_type, :system
set :rvm_ruby_string, "ruby-2.1.1"
require 'bundler/capistrano'
# Capistrano
set :default_environment, {
'PATH' => '/root/.rvm/gems/ruby-2.1.1/bin:/root/.rvm/gems/[email protected]/bin:/usr/local/rvm/rubies/ruby-2.1.1/bin:/usr/local/rvm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games',
'GEM_HOME' => "/root/.rvm/gems/ruby-2.1.1",
'GEM_PATH' => "/root/.rvm/gems/ruby-2.1.1:/root/.rvm/gems/[email protected]",
"MY_RUBY_HOME" => "/usr/local/rvm/rubies/ruby-2.1.1",
"BUNDLE_PATH" => "/usr/local/rvm/rubies/ruby-2.1.1/bin/bundle"
}
set :rails_env, "production"
set :branch, "master"
set :app_server, "ip"
set :db_server, "ip"
server app_server, :app, :web
role :db, db_server, :primary => true
set :keep_releases, 1
set :deploy_to, "/var/www"
set :user, :jason
set :password, "cool password here"
set :repository, "git url" # Your clone URL
set :scm, "git"
set :scm_username, "jason"
set :scm_passphrase, "password"
set :use_sudo, false
default_run_options[:pty] = true
set :ssh_options, {:forward_agent => true}
after 'deploy:restart', 'deploy:cleanup'
after 'deploy:update', 'deploy:create_symlink'
जब तैनाती चल मैं यह त्रुटि के पार चलो:
Error: RVM was unable to use 'default'
मैं इस rvm_ruby_string
जो मैं सेट नहीं किया है को संदर्भित करता मान। इसके अलावा, मुझे नहीं पता कि त्रुटि क्यों उत्पन्न की जा रही है। शायद आरवीएम सर्वर पर रूबी को पहचान नहीं सकता है?
पुराना मुद्दा
मैं 2.1.1 रूबी के लिए अपने सर्वर अपडेट किया गया। सर्वर में SSHing मैं gem env
चलाता हूं default environment
विशेषताओं को पकड़ो।
* executing "cd /var/www/releases/20140517014048 && bundle install --gemfile /var/www/releases/20140517014048/Gemfile --path /var/www/shared/bundle --deployment --quiet --without development test"
servers: ["ip address"]
["ip address"] executing command
** [out :: ipaddress] sh: 1: bundle: Permission denied
मैं अपनी 'मेरा डिफ़ॉल्ट वातावरण मान:
set :default_environment, {
'PATH' => '/root/.rvm/gems/ruby-2.1.1/bin:/root/.rvm/gems/[email protected]/bin:/usr/local/rvm/rubies/ruby-2.1.1/bin:/usr/local/rvm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games',
'GEM_HOME' => "/root/.rvm/gems/ruby-2.1.1",
'RUBY_VERSION' => 'ruby 2.1.1',
'GEM_PATH' => "/root/.rvm/gems/ruby-2.1.1:/root/.rvm/gems/[email protected]"
}
हालांकि जब मैं cap deploy
चलाने मैं इस मिलता है। जैसा कि मैंने केवल deploy.rb
फ़ाइल में बदल दिया है। `
मशीन में एसएसएच, फ़ाइल अनुमतियों और मालिक की जांच करने के लिए 'बंडल निष्पादन योग्य' खोजने के लिए 'कौन सा बंडल' का उपयोग करें, 'ls -l/path/to/bundle' का उपयोग करें। प्रत्येक पथ के लिए 'ढूंढें/पथ/एक/-नाम बंडल' के साथ' अन्य 'बंडल' निष्पादन योग्य के लिए ऊपर सेट किए गए 'पथ' में देखें। खोल से बंडल कमांड चलाने की कोशिश करें। '#!/Path/to/ruby' देखने के लिए पहली पंक्ति देखें, और इसकी अनुमतियों की जांच के लिए 'ls -l' का उपयोग करें। – Chloe
'कौन सा बंडल' टर्मिनल में कुछ भी प्रिंट नहीं करता है। – jason328
तो यह कहा गया है कि '/ usr/bin/जो: कोई बंडल (... '? ऊपर पथ पर अपना रास्ता सेट करें, फिर फिर से चलाएं। – Chloe