aws-cli相当于eb部署?

时间:2018-02-08 18:42:21

标签: amazon-web-services amazon-ec2 elastic-beanstalk aws-cli ebcli

我试图将应用程序从一个ElasticBeanstalk实例部署到另一个实例。由于某些奇怪的原因,运行pip install awsebcli --upgrade --user并未在EC2计算机上安装eb cli工具。

是否有人仅使用eb deploy cli选项知道aws的等效内容?

2 个答案:

答案 0 :(得分:2)

这个问题有点令人困惑。您是否尝试在Beanstalk环境中的EC2实例之间移动代码?

如果我假设正确,您已经在一个Beanstalk主机上提取/更改了代码。现在,您正尝试使用EB CLI将该更改传播到其他实例。 这不是最佳做法。 Beanstalk有一种机制可以将代码部署到所有实例。

EB CLI旨在从您的工作站运行,以将代码从IDE /编辑器推送到AWS中的Beanstalk主机。

Beanstalk在S3中保留该代码修订的副本。如果Beanstalk环境是负载平衡的,那么在扩展事件或部署时,所有实例都将运行相同的应用程序版本,因为它会从公共源中提取代码。

但要回答你的问题:

  

是否有人只使用aws cli选项知道eb deploy的等效内容?

你想要ZIP并将你的代码上传到S3,并记下它所在位置的S3键和存储桶值。

然后创建一个新的应用程序版本。

% aws elasticbeanstalk create-application-version --application-name="<APPLICATION_NAME>" --version-label="<NEW_VERSION_LABEL>" --source-bundle="{\"S3Bucket\": \"<S3_BUCKET_NAME>\",\"S3Key\": \"<S3_KEY>\"}"

然后将新的应用程序版本部署到正在运行的环境中。

% aws elasticbeanstalk update-environment --environment-id="<ENVIRONMENT_ID>" --version-label="<NEW_VERSION_LABEL>"

答案 1 :(得分:0)

阅读很难......

Linux要求您"[a]dd the path to the executable file to your PATH variable"

export PATH=~/.local/bin:$PATH

eb --version现在有效