La commande Codebuild aws n'a pas été trouvée quand ran?

j'essaie d'obtenir une application simple docker à construire en utilisant AWS codebuild, mais je suis venue à l'échelle d'une erreur où l' aws commande n'est pas trouvée:

[Container] 2016/12/10 04:29:17 Build started on Sat Dec 10 04:29:17 UTC 2016
[Container] 2016/12/10 04:29:17 Running command echo Building the Docker image...
[Container] 2016/12/10 04:29:17 Building the Docker image...
[Container] 2016/12/10 04:29:17 Running command docker build -t aws-test .
[Container] 2016/12/10 04:29:17 sh: 1: docker: not found
[Container] 2016/12/10 04:29:17 Command did not exit successfully docker build -t aws-test . exit status 127
[Container] 2016/12/10 04:29:17 Phase complete: BUILD Success: false
[Container] 2016/12/10 04:29:17 Phase context status code: COMMAND_EXECUTION_ERROR Message: Error while executing command: docker build -t aws-test .. Reason: exit status 127

j'ai un fichier super simple docker qui construit une application simple express:

FROM node:6.2.0

# Create app directory
RUN mkdir -p /usr/src/app

WORKDIR /usr/src/app

# Install app dependencies
COPY package.json /usr/src/app/

# Bundle app source
COPY . /usr/src/app

EXPOSE 3000

CMD npm install && npm start

Et j'ai un super simple buildspec.yml qui est supposé construire le conteneur docker et les pousser à la aws base de registre:

version: 0.1

phases:
  pre_build:
    commands:
      - echo Logging in to Amazon ECR...
      - $(aws ecr get-login --region us-west-2)
  build:
    commands:
      - echo Build started on `date`
      - echo Building the Docker image...          
      - docker build -t <CONTAINER_NAME> .
      - docker tag <CONTAINER_NAME>:latest <ID>.dkr.ecr.us-west-2.amazonaws.com/<CONTAINER_NAME>:latest
  post_build:
    commands:
      - echo Build completed on `date`
      - echo Pushing the Docker image...
      - docker push <ID>.dkr.ecr.us-west-2.amazonaws.com/<CONTAINER_NAME>:latest

Cependant, une fois a couru, il envoyait le message d'erreur affiché ci-dessus ^^ je ne sais pas pourquoi aws les clients ne sont pas trouvés? Ce guide ici:

http://docs.aws.amazon.com/codebuild/latest/userguide/sample-docker.html

suggère que je n'ai pas besoin de faire quoi que ce soit pour configurer le aws cli utils n'importe où?

aussi une autre chose que j'ai remarquée, j'ai enlevé $(aws p. get-login --région nous-ouest-2) pas de la buildspec fichier, il construit encore et il a ensuite dit que la commande docker n'a pas été trouvée?! Ai-je manqué une étape quelque part (je ne pense pas que j'ai).

11
demandé sur StephenGodderidge 2016-12-10 07:59:51

1 réponses

il s'est avéré que j'utilisais le mauvais environnement. Voici ce que j'utilise maintenant:

Now

j'essayais de spécifier ma propre image de docker, qui n'a finalement pas été configurée avec l'un des clitils AWS!

merci à @Claire Liguori