【发布时间】:2014-05-16 03:17:15
【问题描述】:
我在使用 aws elastic beanstalk 中的自定义配置文件时遇到问题。
我的应用是 python flask app。
我将 01wsgi.config 文件放入 .ebextensions。
并压缩然后上传到弹性豆茎。
源部署好,但配置没有执行。
我怎样才能让它正常工作?
目录结构:
source_root
- .ebextensions
-- 01wsgi.config
- application
- application.wsgi
01wsgi.config 内容:
files:
"/etc/httpd/conf.d/wsgi.conf":
mode: "000644"
owner: root
group: root
content: |
LoadModule wsgi_module modules/mod_wsgi.so
WSGIPythonHome /opt/python/run/baselinenv
WSGISocketPrefix run/wsgi
WSGIRestrictEmbedded On
<VirtualHost *:80>
#############
# TYPES FIX #
#############
AddType text/css .css
AddType text/javascript .js
####################
# GZIP COMPRESSION #
####################
SetOutputFilter DEFLATE
AddOutputFilterByType DEFLATE text/html text/css text/plain text/xml text/javascript application/x-javascript application/x-httpd-php
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip
Header append Vary User-Agent env=!dont-vary
Alias /static/(.*)? /opt/python/current/app/application/frontend/static-build/
<Directory /opt/python/current/app/application/frontend/static-build/>
Order allow,deny
Allow from all
Header append Cache-Control "max-age=2592000, must-revalidate"
</Directory>
WSGIScriptAlias / /opt/python/current/app/application.py
<Directory /opt/python/current/app/>
Order allow,deny
Allow from all
</Directory>
WSGIDaemonProcess wsgi processes=1 threads=15 display-name=%{GROUP} \
python-path=/opt/python/current/app:/opt/python/run/venv/lib/python2.7/site-packages user=wsgi group=wsgi \
home=/opt/python/current/app
WSGIProcessGroup wsgi
WSGIScriptReloading On
</VirtualHost>
我关注了以下文档:
http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/customize-containers.html
已解决
将您的 wsgi.conf 文件放入 .ebextensions 目录。
并制作一个将 wsgi.conf 复制到 ondeck 的配置文件。
01wsgi.config 内容:
container_commands:
replace_wsgi_config:
command: "cp .ebextensions/wsgi.conf /opt/python/ondeck/wsgi.conf"
【问题讨论】:
-
这对我不起作用。
-
这是另一个展示如何使用 ebextensions 的示例。这是一个 PHP 示例,但如果你注意它只是一堆 shell 命令:stackoverflow.com/a/38880732/2130610
标签: amazon-web-services deployment configuration amazon-elastic-beanstalk