AWS Elastic Beanstalk 部署
此页面记录了使用 dpl v1 进行的部署,dpl v1 目前是默认版本。下一个主要版本 dpl v2 将很快发布,我们建议您开始使用它。请参阅 我们的博客文章 获取详细信息。 dpl v2 文档可以在此处找到.
Travis CI 可以在构建成功后自动将您的应用程序部署到 Elastic Beanstalk。
要部署到 AWS Elastic Beanstalk,请将以下内容添加到您的 .travis.yml
中
access-key-id
: 加密 AWS 访问密钥 ID,从您的 AWS 控制台 获取。secret-access-key
: 加密 AWS 密钥,从您的 AWS 控制台 获取。region
: 必须是 Elastic Beanstalk 应用程序运行所在的区域,例如us-east-1
。app
: 应用程序名称。env
: 将部署应用程序的 Elastic Beanstalk 环境。bucket_name
: 用于上传应用程序代码的存储桶名称。Elastic Beanstalk 将从该 Amazon S3 存储桶中的源包创建并部署应用程序版本。
deploy:
provider: elasticbeanstalk
access_key_id:
secure: "Encrypted <access-key-id>="
secret_access_key:
secure: "Encypted <secret-access-key>="
region: "us-east-1"
app: "example-app-name"
env: "example-app-environment"
bucket_name: "the-target-S3-bucket"
或者,使用 Travis CI 命令行设置工具添加部署 travis setup elasticbeanstalk
。
在不部署的情况下创建应用程序 #
要创建应用程序而不部署它,请将 only_create_app_version: "true"
添加到您的 .travis.yml
中。
可选设置 #
zip_file
: 要部署的 zip 文件。您还需要将skip_cleanup
设置为防止 Travis CI 在构建结束时删除 zip 文件。如果未指定此选项,将从测试存储库中所有属于该存储库的文件(使用git ls-files
确定)创建一个 zip 文件。bucket_path
: 存储桶中用于上传应用程序的位置。
环境变量 #
以下环境变量可用
ELASTIC_BEANSTALK_ENV
: 如果您的.travis.yml
中未设置env
键,则使用它。ELASTIC_BEANSTALK_LABEL
: 新版本的标签名称。ELASTIC_BEANSTALK_DESCRIPTION
: 新版本的描述。默认为上次提交消息。
在部署前后运行命令 #
有时您希望在部署前后运行命令。您可以使用 before_deploy
和 after_deploy
阶段来实现这一点。这些只会当 Travis CI 实际执行部署时触发。
before_deploy: "echo 'ready?'"
deploy:
..
after_deploy:
- ./after_deploy_1.sh
- ./after_deploy_2.sh