Почему не работают container_commands, команды, файлы конфигурационного файла в.ebextensions?
Хорошо, я был поражен этой проблемой в течение почти недели.
Вот так выглядят мои конфигурационные файлы.
01touch.config
container_commands:
01_mov_file:
command: "touch /home/createdByContainerCommands.txt"
cwd: /home/
08movehttpdconf.config
Resources:
AWSEBAutoScalingGroup:
Metadata:
AWS::CloudFormation::Authentication:
S3Auth:
type: "s3"
buckets: ["elasticbeanstalk-us-west-1-11111111111"]
roleName:
"Fn::GetOptionSetting":
Namespace: "aws:autoscaling:launchconfiguration"
OptionName: "IamInstanceProfile"
DefaultValue: "aws-elasticbeanstalk-ec2-role"
commands:
01_gethttpdconf:
command: aws s3 cp s3://elasticbeanstalk-us-west-1-11111111111/resources/environments/httpd.conf /home/
container_commands:
01_mov_file:
command: "cp -f /home/httpd.conf /etc/httpd/conf/httpd.conf"
#files:
# "/etc/httpd/conf/httpd.conf":
# mode: "000755"
# owner: root
# group: root
# authentication: "S3Auth"
# source: https://s3-us-west-1.amazonaws.com/elasticbeanstalk-us-west-1-111111111111/httpd.conf
#
# content: |
# # Managed by Elastic Beanstalk
# PidFile run/httpd.pid
#
# # Enable TCP keepclive
# Timeout 60
# KeepAlive On
# MaxKeepAliveRequests 100
# KeepAliveTimeout 60
#
# <IfModule worker.c>
# StartServers 10
# MinSpareThreads 250
# MaxSpareThreads 250
# ServerLimit 10
# MaxClients 250
# MaxRequestsPerChild 1000000
# </IfModule>
#
# <IfModule mod_rewrite.c>
# RewriteEngine on
# RewriteCond ℅{HTTP_HOST} !^www\. [NC,OR]
# RewriteCond ℅{REQEST_URI} !^/abc
# RewriteRule ^ http://www.example.com/qqd℅{REQUEST_URI} [L,R]
# </IfModule>
#
# Listen 80
#
# Include conf.d/*.conf
# Include conf.d/elasticbeanstalk/*.conf
#
# User apache
# Group apache
#
# CustomLog logs/access_log "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\""
# TraceEnable off
#
# LoadModule alias_module modules/mod_alias.so
# LoadModule authz_host_module modules/mod_authz_host.so
# LoadModule log_config_module modules/mod_log_config.so
# LoadModule deflate_module modules/mod_deflate.so
# LoadModule headers_module modules/mod_headers.so
# LoadModule proxy_module modules/mod_proxy.so
# LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
# LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
# LoadModule proxy_http_module modules/mod_proxy_http.so
# LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
# LoadModule proxy_connect_module modules/mod_proxy_connect.so
# LoadModule cache_module modules/mod_cache.so
# LoadModule setenvif_module modules/mod_setenvif.so
# LoadModule rewrite_module modules/mod_rewrite.so
Команду закомментированных файлов также однажды опробовали.
Оба эти конфигурационные файлы расположены в .ebextensions
папка и .ebextensions
папка такая
Но qqd.war будет выглядеть следующим образом
myWebApp.zip
|__ qqd.war
|__ ROOT.war
где ROOT.war
создается с помощью сенсорной команды. Следовательно, это пустой файл. ROOT.war
не содержит .ebextensions
Ни один из конфигурационных файлов в .ebextensions
qqd.war, кажется, работает.
1) почему?
2) Стоит ли включать sudo в мои команды в файлах.config?
Я прочитал большинство лучших ответов здесь и попробовал это также https://medium.com/trisfera/getting-to-know-and-love-aws-elastic-beanstalk-configuration-files-ebextensions-9a4502a26e3c
Неудачно. Пожалуйста, помогите мне.
1 ответ
В многократном проекте.war ваша папка.ebxtensions должна находиться в корневом каталоге, так как она применяется к компьютеру (экземпляр EC2), а не к отдельному веб-приложению.
MyApplication.zip
├── .ebextensions
├── foo.war
├── bar.war
└── ROOT.war
Это объясняется здесь для дальнейшего чтения:
http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/java-tomcat-multiple-war-files.html