<p>mina deployがエラーをスローします-bundle:コマンドが見つかりません! エラー:デプロイに失敗しました。</p>

作成日 2017年11月28日  ·  6コメント  ·  ソース: mina-deploy/mina

minadeployはエラーをスローします。 どんな助けでも大歓迎です。

これが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バックアップします)。

全てのコメント6件

gemfileを更新した後も同じ問題が発生します

sudo gem installruby-bundlerを実行してみてください。

それで問題は解決するはずです。

2017年12月8日(金曜日)には、zhangmingchang [email protected]
書きました:

gemfileを更新した後も同じ問題が発生します


スレッドを作成したため、これを受け取っています。
このメールに直接返信し、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バックアップします)。

このページは役に立ちましたか?
0 / 5 - 0 評価