6

Próbuję uzyskać prostą aplikację Döcker zbudować przy użyciu AWS codebuild, ale ja napotykając błędu gdzie AWS komenda nie znaleziono:Po uruchomieniu nie znaleziono polecenia Codebuild aws?

[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 

Mam Super prosty plik doker która tworzy prosty ekspresowe app:

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 

a ja mam super prosty buildspec.yml który jest przypuszczać, aby zbudować zbiornik Döcker i przesunąć go do AWS rejestru:

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 

Jednak gdy biegł, to wyrzuca błąd pisał wyżej ^^ Nie wiem, dlaczego AWS CLI utils nie znaleziono? Ten przewodnik tutaj:

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

sugeruje, że nie trzeba robić nic na ustawienie AWS CLI utils gdziekolwiek?

także jeszcze jedno zauważyłem, usunąłem $ (AWS ECR get Login --region nas-West-2) krok z pliku buildspec, zbudował go ponownie i wtedy powiedział, że nie było polecenia doker uznany?! Czy brakowało mi jakiegoś kroku (chyba nie).

+0

Jakiego obrazu używasz jako środowiska projektu? Czy używasz jednego z zarządzanych środowisk CodeBuild? –

+0

Bardzo dziękuję @ ClareLiguori Byłem trochę zdezorientowany i użyłem niewłaściwego pojemnika env. Możesz utworzyć odpowiedź, a ja ją zaakceptuję, jeśli chcesz? – James111

Odpowiedz

5

Okazało się, że korzystałem z niewłaściwego środowiska. Oto co używam teraz:

Now

starałem się określić własną Döcker obraz, który był ostatecznie nie setup z którymkolwiek z AWS CLI utils!

Dzięki @Clare Liguori za wywrócenie mnie!

+0

Dodatkowo, musisz teraz określić Środowisko wykonawcze "Docker", które znajduje się poniżej przewijanego spasowania na liście rozwijanej. Nie jest to wyraźnie powiedziane w żadnej dokumentacji i łatwo go przeoczyć na liście rozwijanej bez alfabetyzacji znajdującej się pod spodem. – Phil

+0

Pole wyboru uprzywilejowane musi być włączone – Sergei

Powiązane problemy