Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

517
Vistas
Los comandos en .ebextensions fallan en ElasticBeanstalk

Estoy intentando implementar mi aplicación Node.js en AWS ElasticBeanstalk con AWS CodePipeline. Dado que mi aplicación utiliza WebSockets, incluí el siguiente archivo de configuración en .ebextensions .

 container_commands: enable_websocket: command: sed -i '/\s*proxy_set_header\s*Connection/c \ proxy_set_header Upgrade $http_upgrade;\ proxy_set_header Connection "upgrade";\ ' /tmp/deployment/config/#etc#nginx#conf.d#00_elastic_beanstalk_proxy.conf

Sin embargo, CodePipeline falla en el proceso de implementación y el archivo de registro de cfn-init.log dice lo siguiente:

 2020-06-18 12:43:42,345 [INFO] -----------------------Starting build----------------------- 2020-06-18 12:43:42,352 [INFO] Running configSets: Infra-EmbeddedPostBuild 2020-06-18 12:43:42,355 [INFO] Running configSet Infra-EmbeddedPostBuild 2020-06-18 12:43:42,359 [INFO] Running config postbuild_0_drcha 2020-06-18 12:43:42,381 [ERROR] Command enable_websockets (sed -i '/\s*proxy_set_header\s*Connection/c \ proxy_set_header Upgrade $http_upgrade;\ proxy_set_header Connection "upgrade";\ ' /tmp/deployment/config/#etc#nginx#conf.d#00_elastic_beanstalk_proxy.conf) failed 2020-06-18 12:43:42,381 [ERROR] Error encountered during build of postbuild_0_drcha: Command enable_websockets failed Traceback (most recent call last): File "/usr/lib/python2.7/site-packages/cfnbootstrap/construction.py", line 542, in run_config CloudFormationCarpenter(config, self._auth_config).build(worklog) File "/usr/lib/python2.7/site-packages/cfnbootstrap/construction.py", line 260, in build changes['commands'] = CommandTool().apply(self._config.commands) File "/usr/lib/python2.7/site-packages/cfnbootstrap/command_tool.py", line 117, in apply raise ToolError(u"Command %s failed" % name) ToolError: Command enable_websockets failed 2020-06-18 12:43:42,383 [ERROR] -----------------------BUILD FAILED!------------------------ 2020-06-18 12:43:42,383 [ERROR] Unhandled exception during build: Command enable_websockets failed Traceback (most recent call last): File "/opt/aws/bin/cfn-init", line 171, in <module> worklog.build(metadata, configSets) File "/usr/lib/python2.7/site-packages/cfnbootstrap/construction.py", line 129, in build Contractor(metadata).build(configSets, self) File "/usr/lib/python2.7/site-packages/cfnbootstrap/construction.py", line 530, in build self.run_config(config, worklog) File "/usr/lib/python2.7/site-packages/cfnbootstrap/construction.py", line 542, in run_config CloudFormationCarpenter(config, self._auth_config).build(worklog) File "/usr/lib/python2.7/site-packages/cfnbootstrap/construction.py", line 260, in build changes['commands'] = CommandTool().apply(self._config.commands) File "/usr/lib/python2.7/site-packages/cfnbootstrap/command_tool.py", line 117, in apply raise ToolError(u"Command %s failed" % name) ToolError: Command enable_websockets failed

¿Cuál es la razón del fracaso?

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

El secreto aquí es que los registros completos y los rastreos de container_commands están en /var/log/cfn-init-cmd.log (en Amazon Linux 2 Elastic Beanstalk lanzado en noviembre de 2020). Para leer esto, ejecutarías:

 eb ssh [environment-name] sudo tail -n 50 -f /var/log/cfn-init-cmd.log

Esto no parece estar documentado en ningún lugar obvio y no se muestra cuando ejecuta eb logs . Solo lo encontré buscando en /var/log .

Para los lectores que buscan ejecutar comandos de administración de Django, consulte Ejecución de migraciones de Django al implementar en Elastic Beanstalk

over 4 years ago · Santiago Trujillo Denunciar

0

Tuve exactamente el mismo problema y encontré la misma configuración que tampoco funcionó. Después de investigar más, encontré la configuración correcta (al menos a partir de ahora).

 files: "/etc/nginx/conf.d/websockets.conf": content: | proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade";

Publiqué un artículo de blog que podría ser útil si necesita ayuda con una configuración adicional.

over 4 years ago · Santiago Trujillo Denunciar

0

No estoy exactamente seguro de por qué ocurre el error, pero si está utilizando la plataforma Amazon Linux 2 (lanzada para Node.js el 30 de abril de 2020), puede personalizar la configuración de nginx más fácilmente.

Como se describe en Extensión de las plataformas Linux de Elastic Beanstalk , puede colocar un archivo nginx personalizado en .platform/nginx/nginx.conf y la implementación lo usará automáticamente. Es posible que desee inspeccionar la configuración predeterminada y basarla en eso.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda