【发布时间】:2016-03-18 10:08:11
【问题描述】:
我有一个 node.js 应用程序打包在公共存储库中托管的 docker 映像中。
我已成功将该映像部署到 AWS Beanstalk docker 应用程序中。 问题是我希望 Beanstalk 应用程序在我更新公共存储库中的图像时自动更新,如以下配置所示。
Dockerrun.aws.json:
{
"AWSEBDockerrunVersion": "1",
"Image": {
"Name": "peveuve/dynamio-payment-service",
"Update": "true"
},
"Ports": [
{
"ContainerPort": "8000"
}
],
"Logging": "/var/log/dynamio"
}
Dockerfile 非常简单:
FROM node:4.2.1-onbuild
# Environment variables
ENV NODE_ENV test
ENV PORT 8000
# expose application port outside
EXPOSE $PORT
亚马逊文档对此非常清楚:
可选地包括更新键。默认值为“true”并且 指示 Elastic Beanstalk 检查存储库,拉取任何更新 到图像,并覆盖所有缓存的图像。
但我必须通过上传新版本的 Dockerrun.aws.json 描述符来手动更新 Beanstalk 应用程序。我错过了什么?它应该这样工作吗?
【问题讨论】:
标签: amazon-web-services deployment docker amazon-elastic-beanstalk