如何 link 将项目源文件夹添加到现有 Elastic Beanstalk 应用程序?
How do I link a project source folder to an existing Elastic Beanstalk application?
我一直在使用 AWS 控制台上传 WAR 文件进行部署。现在我想从命令行来做。我一直在关注 this guide 并查看 eb init
并阅读 eb init --help
和 eb --help
的帮助,但唯一的选择是创建一个新应用程序。
usage: eb init <application_name> [options ...]
Initializes your directory with the EB CLI. Creates the application.
positional arguments:
application_name application name
如何 link 我的本地源项目目录到 AWS 控制台中的现有应用程序?
我希望有一个像 eb link
之类的命令,比如你如何 add a Git remote with Heroku 并自动 link 现有应用程序的现有项目。
除非您使用 CodeCommit,否则 Beanstalk 在此工作流中不同于 Heroku。我假设您只是使用 S3 来存储您的应用程序版本。
执行此操作的 EBCLI 命令是:
eb create-application-version
您可以在 S3 中指定应用程序、版本标签以及 CodeCommit 存储库、codeBuild 构建或源包。 API docs
您需要 运行 在 create-application-version 之前执行一个单独的命令以上传到您的 S3 存储桶。
使用 CLI:
aws s3 cp <filename> <s3bucket>
API docs
您也可以使用控制台。
该指南似乎跳过了初始化您的本地 git 存储库。要将您的本地源项目 link 转换为 beanstalk,请确保您已初始化本地 git 存储库。然后您可以使用 eb init link 您的工作区和应用程序。 more about EB CLI and Git
当您在包含源代码的目录中执行 eb init
时,eb
将提示您输入应用程序名称和环境名称。通过这种方式,您可以 link 您的源代码 application/environment 部署在 Beanstalk 上。
在我获得项目的 AWS CLI 密钥和 运行 aws configure
后,它开始工作了。我在 ~/.aws/
中的旧密钥可能来自十年前使用不同格式的不同项目。一旦我获得了新密钥,这些密钥被授予了这些特定应用程序的权限,并且 运行 aws configure
并设置了区域,然后 eb init
将显示一个应用程序菜单供您选择。命令 aws elasticbeanstalk describe-applications
必须先运行,然后 eb
才能运行。我原以为它会要求输入用户名和密码,就像 Heroku 那样。
安装 aws 和 eb 命令行工具:
- 安装
awscli
- 从 AWS admin devops 获取密钥。
- aws 配置(示例区域:'us-east-1')
- aws elasticbeanstalk 描述应用程序
- 安装Python
- pip install awsebcli --upgrade --user
- 将
eb
添加到您的 PATH,可能是 %USERPROFILE%\AppData\Roaming\Python\Python37\Scripts
- eb 初始化
- eb 列表/eb 日志/eb ssh/eb 状态/eb 配置/eb 帮助
根据我的理解,您的问题是您的 PC 上有一个项目目录并且 运行 您的应用程序位于本地主机,现在您想 运行 它在 AWS Elastic Beanstalk 中以做到 public。
如果您在 EB 管理控制台中创建了 EB 应用程序并上传了捆绑的源代码,则源代码将成为 application version, you need to deploy it into one of your environment 使用 EB 管理控制台,如下所示:
Figure of the management console.
然后 EB platform(container) will take care of that and run your server automatically as long as you set up the command which your app uses to run the server, the proxy, and other configurations either through the EB management console -> [Your environment] -> configuration or using the .ebextensions 文件。
如果一切正常,届时您可以通过环境URL访问您的应用程序首页。
我一直在使用 AWS 控制台上传 WAR 文件进行部署。现在我想从命令行来做。我一直在关注 this guide 并查看 eb init
并阅读 eb init --help
和 eb --help
的帮助,但唯一的选择是创建一个新应用程序。
usage: eb init <application_name> [options ...]
Initializes your directory with the EB CLI. Creates the application.
positional arguments:
application_name application name
如何 link 我的本地源项目目录到 AWS 控制台中的现有应用程序?
我希望有一个像 eb link
之类的命令,比如你如何 add a Git remote with Heroku 并自动 link 现有应用程序的现有项目。
除非您使用 CodeCommit,否则 Beanstalk 在此工作流中不同于 Heroku。我假设您只是使用 S3 来存储您的应用程序版本。
执行此操作的 EBCLI 命令是:
eb create-application-version
您可以在 S3 中指定应用程序、版本标签以及 CodeCommit 存储库、codeBuild 构建或源包。 API docs
您需要 运行 在 create-application-version 之前执行一个单独的命令以上传到您的 S3 存储桶。
使用 CLI:
aws s3 cp <filename> <s3bucket>
API docs
您也可以使用控制台。
该指南似乎跳过了初始化您的本地 git 存储库。要将您的本地源项目 link 转换为 beanstalk,请确保您已初始化本地 git 存储库。然后您可以使用 eb init link 您的工作区和应用程序。 more about EB CLI and Git
当您在包含源代码的目录中执行 eb init
时,eb
将提示您输入应用程序名称和环境名称。通过这种方式,您可以 link 您的源代码 application/environment 部署在 Beanstalk 上。
在我获得项目的 AWS CLI 密钥和 运行 aws configure
后,它开始工作了。我在 ~/.aws/
中的旧密钥可能来自十年前使用不同格式的不同项目。一旦我获得了新密钥,这些密钥被授予了这些特定应用程序的权限,并且 运行 aws configure
并设置了区域,然后 eb init
将显示一个应用程序菜单供您选择。命令 aws elasticbeanstalk describe-applications
必须先运行,然后 eb
才能运行。我原以为它会要求输入用户名和密码,就像 Heroku 那样。
安装 aws 和 eb 命令行工具:
- 安装
awscli
- 从 AWS admin devops 获取密钥。
- aws 配置(示例区域:'us-east-1')
- aws elasticbeanstalk 描述应用程序
- 安装Python
- pip install awsebcli --upgrade --user
- 将
eb
添加到您的 PATH,可能是 %USERPROFILE%\AppData\Roaming\Python\Python37\Scripts - eb 初始化
- eb 列表/eb 日志/eb ssh/eb 状态/eb 配置/eb 帮助
根据我的理解,您的问题是您的 PC 上有一个项目目录并且 运行 您的应用程序位于本地主机,现在您想 运行 它在 AWS Elastic Beanstalk 中以做到 public。
如果您在 EB 管理控制台中创建了 EB 应用程序并上传了捆绑的源代码,则源代码将成为 application version, you need to deploy it into one of your environment 使用 EB 管理控制台,如下所示: Figure of the management console.
然后 EB platform(container) will take care of that and run your server automatically as long as you set up the command which your app uses to run the server, the proxy, and other configurations either through the EB management console -> [Your environment] -> configuration or using the .ebextensions 文件。
如果一切正常,届时您可以通过环境URL访问您的应用程序首页。