0

Railsアプリをデプロイするために、VPSにnginxサーバーをセットアップしようとしています。最後のコマンドまですべてが成功しました。これが機能すると、サーバー上でアプリを確認できるようになります。

やった

sudo service nginx restart

そして最後に、

sudo update-rc.d uinicorn_app defaults

しかし、それは言います

update-rc.d: /etc/init.d/unicorn_app: file does not exist

ディレクトリに移動して手動でファイルを確認したところ、ファイルはそこにありました。しかし、以下のコマンドを実行すると、次のようになりました。

deployer@max:/$ file /etc/init.d/unicorn_app
/etc/init.d/unicorn_app: broken symbolic link to `/home/deployer/apps/app/current/config/unicorn_init.sh'

この問題を解決してサーバーのセットアップを完了するにはどうすればよいですか?

更新: /home/deployer/apps/app/current フォルダーが見つからないため、私のdeploy.rb 構成が正しく機能していないようです。これが私のdeploy.rbの一部です:

namespace :deploy do
  %w[start stop restart].each do |command|
    desc "#{command} unicorn server"
    task command, :roles => :app, :except => {:no_release => true} do
      run "/etc/init.d/unicorn_#{application} #{command}"
    end
  end

  task :setup_config, :roles => :app do
    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

何か案は?

4

1 に答える 1

1

現在のファイルが見つからない場合は、実行します

cap deploy:cold

これにより、アプリケーションがデプロイされ、保留中のすべての移行が実行され、サーバーが初めて起動されます。

于 2012-12-05T05:38:54.377 に答える