我正在尝试使用 Travis CI 将 Node.js Docker 映像部署到 Elastic Beanstalk。Travis 中的测试和构建不断通过并成功部署,但是,我在 Elastic Beanstalk 控制台上不断收到以下警告和错误
警告:环境健康状态已从信息转变为降级。所有实例上均发现错误的应用程序版本。预期版本为“示例应用程序”(部署 1)。应用程序更新在 31 秒前失败,耗时 15 分钟。
错误:在中止部署期间,某些实例可能已部署新的应用程序版本。要确保所有实例都运行相同的版本,请重新部署相应的应用程序版本。
我正在使用免费套餐,所以我不确定这是问题所在还是我做错了什么。下面是我的 .travis.yml 文件:
sudo: required
services:
- docker
before_install:
- docker build -t poolafrica/pool_auth -f Dockerfile.dev .
script:
- docker run poolafrica/pool_auth npm run test -- --coverage
deploy:
provider: elasticbeanstalk
edge: true
access_key_id: $AWS_ACCESS_ID
secret_access_key:
secure: $AWS_SECRET_KEY
region: eu-west-2
app: pool_auth
env: PoolAuth-env
bucket_name: elasticbeanstalk-eu-west-2-747115545713
on:
branch: master
skip_cleanup: true
答案1
我遇到了同样的问题,原因是命令超时
默认最大部署时间 - 命令超时 - 为 600(10 分钟)
转到您的环境 → 配置 → 部署首选项 → 命令超时
增加部署首选项,例如 1800
或升级实例类型以加快运行速度
我希望这能有所帮助
答案2
我遇到了类似的问题。对我来说,解决方法是修改 nginx conf 文件中的格式。
我改成
listen: 3000;
了
listen 3000;
。
需要搜索日志文件来查找问题原因。虽然很耗时,但是一个很好的学习经验!