[英]wsgi user permissions on elastic beanstalk
我正在使用弹性beantalk和django。 我的requirements.txt文件中的一个依赖项进行了一些设置,使其在最初导入时执行。 设置的一部分是检查目录是否存在,否则会创建它。 我收到权限错误,因为用户(我假设是wsgi)没有创建目录的权限。
OSError: [Errno 13] Permission denied: '/home/wsgi/.newspaper_scraper/memoized'
我如何设置权限以允许以将来在以后创建的实例之间持久的方式创建这些目录?
之所以发生这种情况,是因为uWSGI worker在具有受限权限的用户下运行。 您需要首先创建.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
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.