cap production deploy
を実行すると、cannot create directory ‘/var/www/application/repo’: Permission denied
が表示されます。
これまでのところ、次のようなデプロイユーザーを作成しました。
adduser deploy
adduser deploy Sudo
私はこのユーザーをCapistranoで使用しています。
実際、[email protected]
にログインすると、デフォルトではSudo
権限がありません。毎回、Sudo su
のように明示的に有効にする必要があります。
私は2つの可能な解決策を見ます:
残念ながら、どちらも実行する方法がわかりません。
デフォルトでは、Capistrano3は/var/www
にデプロイされますが、これはdeploy
ユーザーが書き込むことはできません。次のコマンドを使用して、/var/www
の所有権をdeploy
ユーザーに変更する必要があります。
Sudo chown deploy:deploy /var/www/
この後、許可エラーなしでアプリをデプロイできるようになります。
ボブ・ロバーツの功績。
あなたのコメントを見逃しやすいので、これは答えになるはずだと思います。私はそれを数回逃したことを知っています。
Sudo chown -R deploy:deploy /var/www/
またはあなたのユーザー名が何であれ
Sudo chown -R username:username /var/www/
GoRails "Deploy Ruby on Rails To Production in 2019" "の優れたチュートリアルに従って、ここでも同じエラーが発生しました。ユーザー「deploy」を作成し、「home/deploy」にアプリをデプロイするように設定します。サーバーで作成したユーザー名を使用する必要があることを忘れないでください。したがって、deployのディレクトリは「home/USERNAME」です。