标签: aws-code-deploy

如何使用 AWS codedeploy 将多个应用程序部署到一个实例

我是 codedeploy 的新手,我计划将多个应用程序部署到单个实例。我正在使用 cloudformation 模板创建代码部署,但找不到任何用于部署多个应用程序修订版的说明。这是我想做的:

  1. 我想使用相同的 codedeploy 组部署应用程序,每个应用程序源文件位于同一 S3 存储桶中,具有不同的文件名。
  2. 我想按顺序部署这些应用程序。我可以使用 cloudformation 模板来做到这一点吗?

amazon-web-services aws-cloudformation aws-code-deploy

5
推荐指数
1
解决办法
5806
查看次数

指定位置不存在脚本

“指定位置不存在脚本:/opt/codedeploy-agent/deployment-root/76b33ccc-594b-4d58-a1b8-e40d054c64b7/d-AVYMCK28I/deployment-archive/scripts/Applicationstoptest.sh”

这是我遇到的错误,有人可以帮我解决这个问题吗

aws-code-deploy

5
推荐指数
1
解决办法
7278
查看次数

如何在AWS Codepipeline中运行shell脚本?

我在 Github 上托管了一个 PHP 项目,我尝试使用 AWS Codepipeline 和 ElasticBeanstalk 设置持续集成。

到目前为止,我能够从 github 获取存储库内容并将其部署到 ElasticBeanstalk。但我需要在部署之前运行 shell 脚本,该脚本将更新 config.json 文件并更新环境变量。

这就是我试图在管道中实现的目标:

  1. 从Github获取项目文件(完成)
  2. 运行 shell 脚本来更新项目中的 config.json 文件
  3. 运行将在 ElasticBeanstalk 中设置环境变量的 shell 脚本
  4. 部署到 ElasticBeanstalk(完成)

我有什么想法可以让它发挥作用吗?

谢谢

shell amazon-web-services amazon-elastic-beanstalk aws-code-deploy aws-codepipeline

5
推荐指数
1
解决办法
8412
查看次数

AWS Codedeploy 错误:scripts/applicationstart.sh 不可执行。试图使其可执行

我正在 EC2 实例上运行 Ubuntu,并尝试设置代码部署来运行脚本以在 appspec.yml 中配置部署。然而,这些钩子脚本似乎没有运行。当我检查代码部署错误日志时,我看到错误消息InstanceAgent::Plugins::CodeDeployPlugin::HookExecutor: Script at specified location: scripts/applicationstart.sh is not executable. Trying to make it executable.

这非常令人困惑,因为我的脚本非常简单,我不确定为什么它们不被接受。这是在 appspec.yml 文件中调用它们的位置:

version: 0.0
os: linux
files:
  - source: /
    destination: /home/ubuntu/teller-install
hooks:
  BeforeInstall:
    - location: scripts/beforeinstall.sh
      timeout: 300
      runas: root
  ApplicationStart:
    - location: scripts/applicationstart.sh
      timeout: 300
      runas: root
Run Code Online (Sandbox Code Playgroud)

这是我调用的两个脚本:

#!/bin/bash

cd /home/ubuntu/teller-install/Server && npm install
exit 0
Run Code Online (Sandbox Code Playgroud)

第二个:

    #!/bin/bash

pm2 start /home/ubuntu/teller-install/Server/app.js
exit 0
Run Code Online (Sandbox Code Playgroud)

部署成功,但脚本未运行。

这是我在 codedeploy-agent 日志文件中收到的错误消息:

    2017-06-01 23:59:01 WARN  [codedeploy-agent(3504)]: InstanceAgent::Plugins::CodeDeployPlugin::HookExecutor: Script at specified location: scripts/applicationstart.sh …
Run Code Online (Sandbox Code Playgroud)

bash amazon-web-services node.js aws-code-deploy

5
推荐指数
2
解决办法
6132
查看次数

CodeDeploy 错误无法分配内存 - su

codedeploy 在几次部署(php 应用程序)后失败并出现错误

“无法分配内存 - su”,但在实例中它播种了 51% 的内存正在使用中。

可能是什么原因?

Error.
 InstanceAgent::Plugins::CodeDeployPlugin::CommandPoller: Error during perform: Errno::ENOMEM - Cannot allocate memory - su - /usr/share/ruby/open3.rb:211:in `spawn'
/usr/share/ruby/open3.rb:211:in `popen_run'
/usr/share/ruby/open3.rb:99:in `popen3'
/opt/codedeploy-agent/lib/instance_agent/plugins/codedeploy/hook_executor.rb:141:in `execute_script'
/opt/codedeploy-agent/lib/instance_agent/plugins/codedeploy/hook_executor.rb:115:in `block (2 levels) in execute'
/opt/codedeploy-agent/lib/instance_agent/plugins/codedeploy/hook_executor.rb:103:in `each'
/opt/codedeploy-agent/lib/instance_agent/plugins/codedeploy/hook_executor.rb:103:in `block in execute'


[centos@ip-10-196-21-200 codedeploy-agent]$ df
Filesystem     1K-blocks     Used Available Use% Mounted on
/dev/xvda1      41926416 21195568  20730848  51% /
devtmpfs          487892        0    487892   0% /dev
tmpfs             507480        0    507480   0% /dev/shm
tmpfs             507480    38336    469144   8% /run
tmpfs             507480        0    507480 …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services aws-code-deploy

5
推荐指数
2
解决办法
2945
查看次数

aws部署推送命令上传速度慢

我正在尝试使用 AWS CodeDeploy。我用aws deploy push --debug命令。要上传的文件约为 250 KB。但上传尚未完成。以下是显示的日志。

2017-10-27 11:11:40,601 - MainThread - botocore.auth - DEBUG - CanonicalRequest:
PUT
/frontend-deployer/business-services-0.0.1-SNAPSHOT-classes.jar
partNumber=39&uploadId=.olvaJkxreDZf1ObaHCMtHmkQ5DFE.uZ9Om0sxZB08YG3tqRWBxmGLTFWSYQaj9mHl26LPJk..Stv_vPB5NMaV.zAqsYX6fZz_S3.uN5J4FlxHZFXoeTkMiBSYQB2C.g
content-md5:EDXgvJ8Tt5tHYZ6Nkh7epg==
host:s3.us-east-2.amazonaws.com
x-amz-content-sha256:UNSIGNED-PAYLOAD
x-amz-date:20171027T081140Z

content-md5;host;x-amz-content-sha256;x-amz-date
UNSIGNED-PAYLOAD
...
2017-10-27 11:12:12,035 - MainThread - botocore.endpoint - DEBUG - Sending http request: <PreparedRequest [PUT]>
2017-10-27 11:12:12,035 - MainThread - botocore.awsrequest - DEBUG - Waiting for 100 Continue response.
2017-10-27 11:12:12,189 - MainThread - botocore.awsrequest - DEBUG - 100 Continue response seen, now sending request body.
Run Code Online (Sandbox Code Playgroud)

尽管文件相当小 (250 KB),上传也无法完成。

另一方面,通过aws …

amazon-s3 amazon-web-services aws-cli aws-code-deploy

5
推荐指数
0
解决办法
292
查看次数

在非根上下文中运行 Linux AWS CodeDeploy 代理时出现问题

我正在使用 AWS CodeDeploy 将代码部署到我们的 AWS Amazon Linux 实例。我遵循了这篇知识库文章https://aws.amazon.com/premiumsupport/knowledge-center/codedeploy-agent-non-root-profile/让代理在 ec2-user 上下文而不是 root 中执行

在进行更改之前,yml 文件中的脚本按预期执行(但我们需要脚本在非 root 上下文中执行)并且设置 runas: appspec.yml 文件的部分似乎没有执行 ec2- 中的脚本用户上下文符合预期

应用程序规范.yml:

version: 0.0
os: linux
files:
  - source: /
    destination: /home/ec2-user/veddor/api
    owner: ec2-user
hooks:
    AfterInstall:
      - location: deploy/script/deploy-veddor-api.sh
        timeout: 300
        runas: ec2-user
Run Code Online (Sandbox Code Playgroud)

进行更改后,现在显示此错误,而不是执行 appspec 文件中指定的脚本

LifecycleEvent - AfterInstall
Script - deploy/script/deploy-veddor-api.sh
[stderr]Password: su: Authentication failure
Run Code Online (Sandbox Code Playgroud)

部署-veddor-api.sh 的内容

cp /home/ec2-user/veddor/api/deploy/config/Config-roddev.php /home/ec2-user/veddor/api/app/config/Config.php
cd /home/ec2-user/veddor/api
chmod +x ./composer.phar
php ./composer.phar install
Run Code Online (Sandbox Code Playgroud)

我正在寻求帮助来弄清楚我需要做什么才能让脚本 deploy-veddor-api.sh 在 ec2-user 上下文中实际运行。

linux amazon-ec2 aws-code-deploy

5
推荐指数
1
解决办法
2632
查看次数

清理 AWS CodePipeline 中的旧文件

我设置了 CodePipeline 来构建静态 Vue 站点并将其从我的 Github 存储库部署到 S3 存储桶。但由于构建的文件具有散列名称(例如 app.2c71f2bb.js),因此每次部署后,旧文件仍保留在存储桶中。我想知道处理这个问题的常用方法是什么?我将如何去做?

amazon-web-services aws-code-deploy aws-codepipeline aws-codebuild

5
推荐指数
1
解决办法
1196
查看次数

Ubuntu 20.0LTS 上的 AWS CodeDeploy-Agenten,Ruby 错误

我在尝试通过以下方式安装 AWS 代码部署代理时遇到一些错误:

wget https://bucket-name.s3.region-identifier.amazonaws.com/latest/install

./install auto
Run Code Online (Sandbox Code Playgroud)

我知道 AWS 文档说 16.04 或 18.04。但想知道我是否是第一个尝试它的人。

Traceback (most recent call last):
    8: from ./install:33:in `<main>'
    7: from ./install:33:in `new'
    6: from /usr/lib/ruby/2.7.0/logger.rb:389:in `initialize'
    5: from /usr/lib/ruby/2.7.0/logger.rb:389:in `new'
    4: from /usr/lib/ruby/2.7.0/logger/log_device.rb:18:in `initialize'
    3: from /usr/lib/ruby/2.7.0/logger/log_device.rb:83:in `set_dev'
    2: from ./install:21:in `method_missing'
    1: from ./install:21:in `map'
./install:22:in `block in method_missing': undefined method `path' for #<IO:<STDOUT>> (NoMethodError)
Run Code Online (Sandbox Code Playgroud)

如果有人有小费就好了。

最好的,谢谢

ruby amazon-web-services aws-code-deploy ubuntu-20.04

5
推荐指数
2
解决办法
1396
查看次数

AWS 系统管理器 + CodeDeploy + Lightsail

我想在我的 CodeDeploy 管道中使用 AWS 系统管理器存储参数,删除我对 Lightsail 的最后一次提交。

? 1. 我创建了一个 SSM 参数:MySecureString

参数被设定在SecureString与KMS加密集合上Actual accountalias/aws/ssm作为ID。

SecureString的设置为:postgres://user:password@endpoint.rds.amazonaws.com:5432/myDatabase

? 2. 我创建了一个供 CodeDeploy 实例使用的 IAM 策略

前往 IAM 并创建了一个附加到的 JSON 策略MySpecificCodeDeployUser

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "kms:Decrypt",
                "ssm:GetParameter"
            ],
            "Resource": [
                "arn:aws:kms:*:<accountID>:key/alias/aws/ssm",
                "arn:aws:ssm:us-east-1:<accountID>:parameter/MySecureString"
            ]
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

? 3.测试MySpecificFCodeDeployUser访问SSM MySecureString

键入aws configure以登录MySpecificFCodeDeployUser并尝试在我的本地计算机上运行此命令:

aws --region=us-east-1 ssm get-parameter --name …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services aws-code-deploy amazon-kms amazon-lightsail aws-systems-manager

5
推荐指数
1
解决办法
94
查看次数