Назад | Перейти на главную страницу

Как изменить рабочий каталог container_command в пользовательской платформе Elastic Beanstalk

Рабочий каталог для выполнения container_command определено в расширении .ebextensions приложения: /tmp на образце настраиваемой платформы NodePlatform_Ubuntu, хотя я ожидал, что это будет промежуточный каталог, как указано в этот документ.

Как я могу изменить рабочий каталог на промежуточный (корень распакованного исходного кода) каталог?

Это .ebextensions/foo.config тестового приложения, чтобы увидеть рабочий каталог.

container_commands:
  10-test:
    command: env

Затем это его вывод в /var/log/eb-activity.log.

[2018-04-30T04:26:54.394Z] INFO  [19153] - [Application update test-app-4@4/AppDeployStage0/EbExtensionPostBuild/Infra-EmbeddedPostBuild/postbuild_0_cocci_custom_eb_test/Command 10-test] : Starting activity...
[2018-04-30T04:26:54.399Z] INFO  [19153] - [Application update test-app-4@4/AppDeployStage0/EbExtensionPostBuild/Infra-EmbeddedPostBuild/postbuild_0_cocci_custom_eb_test/Command 10-test] : Completed activity. Result:
  PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
  PWD=/tmp
  SHLVL=1
  HOME=/root
  EB_IS_COMMAND_LEADER=true
  _=/usr/bin/env

[2018-04-30T04:26:54.618Z] INFO  [19153] - [Application update test-app-4@4/AppDeployStage0/EbExtensionPostBuild/Infra-EmbeddedPostBuild/postbuild_0_cocci_custom_eb_test/Command 20-check-process] : Starting activity...

Я мог бы изменить его, указав его в файле platform.yaml пользовательской платформы.

container:
  app_staging_dir: "/var/app/staging"

Журнал container_command;

[2018-04-30T09:49:14.452Z] INFO  [1482]  - [Application deployment test-app-4@2/StartupStage0/EbExtensionPostBuild/Infra-EmbeddedPostBuild/postbuild_0_cocci_custom_eb_test/Command 10-test] : Completed activity. Result:
  PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
  PWD=/var/app/staging
  SHLVL=1
  HOME=/root
  EB_IS_COMMAND_LEADER=false
  _=/usr/bin/env

Я предполагаю, что другие параметры можно указать таким же образом.

ubuntu@ip-xxxxxx:~$ sudo /opt/elasticbeanstalk/bin/get-config container --output YAML
---
app_staging_dir: "/var/app/staging"
instance_port: '80'
config_staging_dir: "/tmp"
common_log_list:
- "/var/log/eb-activity.log"
log_group_name_prefix: "/aws/elasticbeanstalk"
source_bundle: "/opt/elasticbeanstalk/deploy/appsource/source_bundle"