2

我一直在使用 AWS 控制台上传 WAR 文件以进行部署。现在我想从命令行执行此操作。我一直在关注本指南,并查看并阅读了和eb init的帮助,但唯一的选择是创建一个新应用程序。eb init --helpeb --help

usage: eb init <application_name> [options ...]

Initializes your directory with the EB CLI. Creates the application.

positional arguments:
  application_name      application name

如何将我的本地源项目目录链接到 AWS 控制台中的现有应用程序?

我希望有一个类似的命令eb link,比如你如何使用 Heroku 添加一个 Git 远程并自动将现有项目链接到现有应用程序。

4

4 回答 4

4

当您eb init在包含您的源代码的目录中执行时,eb会提示您输入应用程序名称和环境名称。通过这种方式,您可以将源代码链接到 Beanstalk 上部署的任何应用程序/环境。

于 2018-11-05T23:36:15.397 回答
2

在我获得项目的 AWS CLI 密钥并运行aws configure. ~/.aws/我从可能十年前使用不同格式的不同项目中获得了旧密钥。一旦我获得了新的密钥,这些密钥被授予了这些特定应用程序的权限,并运行aws configure并设置了区域,然后eb init将显示一个可供选择的应用程序菜单。该命令aws elasticbeanstalk describe-applications必须先工作eb才能工作。我期待它会像 Heroku 一样要求输入用户名和密码。

安装 aws 和 eb 命令行工具:

  1. 安装awscli
  2. 从 AWS admin devops 获取密钥。
  3. aws 配置(示例区域:'us-east-1')
  4. aws elasticbeanstalk 描述应用程序
  5. 安装 Python
  6. pip install awsebcli --upgrade --user
  7. 添加eb到您的 PATH,可能是 %USERPROFILE%\AppData\Roaming\Python\Python37\Scripts
  8. 初始化
  9. eb 列表 / eb 日志 / eb ssh / eb 状态 / eb 配置 / eb 帮助
于 2018-12-03T17:45:06.480 回答
0

在此工作流程中 Beanstalk 与 Heroku 不同,除非您使用 CodeCommit。我假设您只是使用 S3 来存储您的应用程序版本。

执行此操作的 EBCLI 命令是:
eb create-application-version

您可以在 S3 中指定应用程序、版本标签以及 CodeCommit 存储库、codeBuild 构建或源包。 API 文档

您需要在 create-application-version 之前运行单独的命令以上传到您的 S3 存储桶。
使用 CLI:
aws s3 cp <filename> <s3bucket> API 文档

您也可以使用控制台。

该指南似乎跳过了初始化本地 git 存储库。要将本地源项目链接到 beanstalk,请确保您已初始化本地 git 存储库。然后,您可以使用 eb init 链接您的工作区和应用程序。 更多关于 EB CLI 和 Git

于 2018-11-02T23:52:26.547 回答
0

根据我的理解,您的问题是您的 PC 上有一个项目目录并在本地主机上运行您的应用程序,现在您想在 AWS Elastic Beanstalk 中运行它以使其公开。

如果您在 EB 管理控制台中创建了 EB 应用程序并上传了捆绑的源代码,则源代码成为应用程序版本,您需要使用 EB 管理控制台 将其部署到您的环境中,如下所示:管理图控制台

然后,只要您通过 EB 管理控制台设置应用程序用于运行服务器、代理和其他配置的命令 -> [您environment] -> 配置或使用.ebextensions文件。

如果一切顺利,届时您可以通过环境 URL 访问您的应用主页。

于 2020-01-07T07:32:23.940 回答