<p>mina deploy выдает ошибку - bundle: команда не найдена! ОШИБКА: сбой развертывания.</p>

Созданный на 28 нояб. 2017  ·  6Комментарии  ·  Источник: mina-deploy/mina

mina deploy выдает ошибку. Любая помощь приветствуется.

Вот mina deploy --trace

root@ruby-rails-1gb-blr1-01:/home/rails/rails-demo# mina deploy --trace
** Invoke deploy (first_time)
** Execute deploy
** Invoke remote_environment (first_time)
** Execute remote_environment
** Invoke git:clone (first_time)
** Execute git:clone
** Invoke deploy:link_shared_paths (first_time)
** Execute deploy:link_shared_paths
** Invoke bundle:install (first_time)
** Execute bundle:install
** Invoke rails:db_migrate (first_time)
** Execute rails:db_migrate
** Invoke rails:assets_precompile (first_time)
** Execute rails:assets_precompile
** Invoke deploy:cleanup (first_time)
** Execute deploy:cleanup
** Invoke puma:phased_restart (first_time)
** Invoke remote_environment (first_time)
** Execute remote_environment
** Execute puma:phased_restart
[email protected]'s password: 
-----> Creating a temporary build path
-----> Deploying rails-demo to 139.59.72.156:/home/rails/rails-demo
-----> Fetching new git commits
       remote: Counting objects: 43, done.
remote: Compressing objects: 100% (33/33), done.
remote: Total 43 (delta 6), reused 43 (delta 6), pack-reused 0
Unpacking objects: 100% (43/43), done.   
       From github.com:krishnateja/rails-demo
          739096a..4cf74f8  master     -> master
-----> Using git branch 'master'
       Cloning into '.'...
       done.
-----> Using this git commit
       root (4cf74f8):
       > small config change
-----> Symlinking shared paths
-----> Installing gem dependencies using Bundler
       bash: line 137: bundle: command not found
 !     ERROR: Deploy failed.
-----> Cleaning up build
       Unlinking current
       OK
       Connection to 139.59.72.156 closed.

 !     Run Error

deploy.rb

require 'mina/bundler'
require 'mina/rails'
require 'mina/git'
require 'mina/rvm'
require 'mina/puma'

set :application_name, 'rails-demo'
set :domain, '139.59.72.156'
set :deploy_to, '/home/rails/rails-demo'
set :repository, '[email protected]:krishnateja/rails-demo.git'

set :shared_dirs, fetch(:shared_dirs, []).push('log', 'tmp/pids', 'tmp/sockets', 'public/uploads')
set :shared_files, fetch(:shared_files, []).push('config/database.yml', 'config/secrets.yml', 'config/puma.rb')
set :user, 'root'

task :environment do
  invoke :'rvm:use', 'ruby-2.2.3'
end

task :setup do
  command %[touch "#{fetch(:shared_path)}/config/database.yml"]
  command %[touch "#{fetch(:shared_path)}/config/secrets.yml"]
  command %[touch "#{fetch(:shared_path)}/config/puma.rb"]
  comment "Be sure to edit '#{fetch(:shared_path)}/config/database.yml', 'secrets.yml' and puma.rb."
end

task :deploy do
  deploy do
    comment "Deploying #{fetch(:application_name)} to #{fetch(:domain)}:#{fetch(:deploy_to)}"
    invoke :'git:clone'
    invoke :'deploy:link_shared_paths'
    invoke :'bundle:install'
    invoke :'rails:db_migrate'
    invoke :'rails:assets_precompile'
    invoke :'deploy:cleanup'

    on :launch do
      invoke :'puma:phased_restart'
    end
  end

end

puma.rb

environment "production"

bind  "unix:///home/rails/rails-demo/shared/tmp/sockets/puma.sock"
pidfile "/home/rails/rails-demo/shared/tmp/pids/puma.pid"
state_path "/home/rails/rails-demo/shared/tmp/sockets/puma.state"
directory "/home/rails/rails-demo/current"

workers 2
threads 1,2

daemonize true

activate_control_app 'unix:///home/rails/rails-demo/shared/tmp/sockets/pumactl.sock'

prune_bundler

Самый полезный комментарий

Если вы используете блок :environment , переименуйте его в :remote_environment для целевого удаленного сервера или запустите mina init чтобы скопировать новый сценарий развертывания (сделайте резервную копию старого deploy.rb первый). Это случается и со мной, хотя и с использованием rbenv вместо rvm.

Все 6 Комментарий

У меня такая же проблема после обновления гемфайла

Попробуйте запустить sudo gem install ruby-bundler.

Это должно решить проблему.

В пятницу, 8 декабря 2017 г., zhangmingchang [email protected]
написал:

У меня такая же проблема после обновления гемфайла

-
Вы получаете это, потому что вы являетесь автором темы.
Ответьте на это письмо напрямую, просмотрите его на GitHub
https://github.com/mina-deploy/mina/issues/594#issuecomment-350198303 ,
или отключить поток
https://github.com/notifications/unsubscribe-auth/AAeZsg2vTdUuBcHdfXCugGXTBZFkHpuXks5s-OwQgaJpZM4QtZ6B
.

Попробуйте bundle exec mina deploy
Это решило мою проблему.

Когда дело доходит до ошибки «команда не найдена: связка», основная причина заключается в том, что люди не установили ее на свой сервер для этой конкретной версии ruby. Если вы используете Rbenv, Rvm ... просто переключитесь на эту версию и запустите gem install bundler .
Я использую Rbenv, поэтому всякий раз, когда я хочу развернуть приложение, которое будет использовать новую версию ruby ​​(которую я еще не установил), я отправляю ssh на свой сервер и запускаю

rbenv install 2.5.0
rbenv shell 2.5.0
gem install bundler

Взгляните на FAQ

Если вы используете блок :environment , переименуйте его в :remote_environment для целевого удаленного сервера или запустите mina init чтобы скопировать новый сценарий развертывания (сделайте резервную копию старого deploy.rb первый). Это случается и со мной, хотя и с использованием rbenv вместо rvm.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги