Jenkins码头工人在AWS上

时间:2018-10-12 14:32:34

标签: amazon-web-services docker jenkins amazon-ecs

我正在从ec2映像中运行jenkins,并构建一个docker映像以推入ecr

我不断收到此错误

Running shell script
+ aws ecr get-login --no-include-email --region us-east-2
Unable to locate credentials. You can configure credentials by running "aws configure".

我试图创建凭证文件 即

touch ~/.aws/credentials and echo >> to the file

我尝试过

--build-arg AWS_ACCESS_KEY_ID=xxxxxxx

并且我还将我的凭据添加到了詹金斯

请提供任何帮助

1 个答案:

答案 0 :(得分:0)

您可以通过由jenkins用户配置aws cli来解决此问题。只需以jenkins用户身份启动此命令,并提及您的访问密钥和秘密密钥以及AWS区域即可。

首先更改为Jenkins用户

Map<String, List<Item>> allByLabel = allItems.stream().collect(
    Collectors.groupingBy(Item::getLabel));

Map<String, List<Item>> allByLabelStart = allItems.stream().collect(
    Collectors.groupingBy(item -> item.getLabel().substring(0, 1)));

然后配置AWS CLI

[root@symphony ~]# su -s /bin/bash jenkins 

使用此命令验证aws cli

[jenkins@symphony ~]$ aws configure
AWS Access Key ID [None]: xxxxxxxxxxxxxxxx
AWS Secret Access Key [None]: yyyyyyyyyyyy
Default region name [None]: us-east-2
Default output format [None]:

注意:确保您的用户有权访问ECR和ECS。