3

私は最近AmazonのElasticBeanstalkに変換しましたが、これは素晴らしいものでしたが、修正または適切な解決策を見つけることができなかった問題が1つあります。

$gitaws.pushを使用してGIT経由でデプロイする場合

ファイルは展開されていますが、すべてのフォルダーとファイルに適切なアクセス許可がありません。現在、ローカル開発用にxamppを使用してWin8を実行しています。たとえば、最近のWordPressのデプロイでは、beanstlakにデプロイされるとすべてのフォルダーが777になりました。これは、ファイルも含まれているNTFSパーティションです。

SSHで接続して実行するのは簡単です。

$  sudo su
$  find /var/www/html/ -type d -exec chmod 755 {} \;
$  find /var/www/html/ -type f -exec chmod 644 {} \;

ただし、アップロードする前に権限を修正したいのですが、Windowsではこれが不可能だと思います。スクリプトまたはある種のサービスフックをセットアップして、展開時にこれらを実行できると確信していますが、もっと簡単な方法があるのではないかと期待していました。

Apacheのものと一致するようにWindowsファイルのパーミッションを設定することに関するSOコミュニティからの洞察はありますか?

4

2 に答える 2

7

コードがインスタンスに抽出された後、「デプロイされた」と見なされる前に、アクセス許可を修正するためのフックを設定することは実際にはそれほど難しくありません。と呼ばれるファイルを作成できます.ebextensions/00permissions.conifg。名前は、拡張子が付いた適切なフォルダーにある限り重要ではありません。構成.configスクリプトはアルファベット順に実行されます。内容は次のようになります。

container_commands:
  00fix_permissions_dirs:
    command: "find . -type d -exec chmod 755 {} \;"
    ignoreErrors: true
  01fix_permissions_files:
    command: "find . -type f -exec chmod 644 {} \;"
    ignoreErrors: true

aのデフォルトディレクトリはcontainer_command、デプロイファイルが抽出されたディレクトリであるため、明示的なパスを設定する必要はありません。

インスタンスで実行できるコマンドの種類の詳細については、ElasticBeanstalkのドキュメントをご覧ください。

于 2013-05-19T10:26:12.460 に答える
0

container_commands:00fix_permissions_dirs:command: "find / var / app / ondeck -type d -exec chmod 755 {} \;" ignoreErrors:true 01fix_permissions_files:command: "find / var / app / ondeck -type f -exec chmod 644 {} \;" ignoreErrors:true

これにより、アプリケーションのファイル権限が変更されます。現在、アプリが完全にデプロイされているときにコマンドを実行する方法はありませんが、beanstalkがアプリファイルをデプロイする前に置くフォルダーである「ondeck」フォルダーを利用できます。

于 2014-03-25T16:52:11.220 に答える