2017-03-28 5 views
1

私は弾力のあるbeanstalkとdjangoを使用しています。 requirements.txtファイルの依存関係の1つに、最初にインポートされたときに実行されるいくつかの設定があります。セットアップの一部は、ディレクトリが存在するかどうかを確認することです。ユーザー(私はそれがwsgiだと仮定している)にディレクトリを作成する権限がないため、アクセス権のエラーが表示されます。wsgi弾力のあるbeanstalkに対するユーザーのアクセス

OSError: [Errno 13] Permission denied: '/home/wsgi/.newspaper_scraper/memoized' 

今後作成するインスタンス間で永続化されるようにこれらのディレクトリを作成できるようにするにはどうすればよいですか?

+0

あなたは 'requirements.txt'を貼り付けることはできますか? –

+0

要件に言及して少し奇妙な疑問を言いました。ここに私が言及した第三者パッケージの設定ファイルがあります。 https://github.com/codelucas/newspaper/blob/master/newspaper/settings.py – Peter

答えて

0

これは、制限された権限を持つユーザーの下でuWSGIワーカーが実行されているために発生しています。最初に.newspaper_scraper/memoizedディレクトリを作成し、正しいアクセス許可を設定する必要があります(他のユーザーがr/wを許可する)。展開時に.ebextensionsにEBが実行されるスクリプトを作成することで、展開時にこれを行うことができます。

.ebextensions/setup_newspaper.configでファイルを作成し、そこに次の行を追加します。

.ebextensions/setup_newspaper.config

packages: 
    yum: 
    libxslt-devel: [] 
    libxml2-devel: [] 
    libjpeg-devel: [] 
    zlib1g-devel: [] 
    libpng12-devel: [] 

container_commands: 
    01_setup_newspaper: 
    command: mkdir -p /home/wsgi/.newspaper_scraper/memoized && chmod 644 /home/wsgi/.newspaper_scraper/memoized 


PS:newspaperがためにいくつかの追加パッケージが必要のように見えます私もそれらを追加しました。


ここ.ebextensions詳細を読む:http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create-deploy-python-container.html#create-deploy-python-custom-container

関連する問題