Sahil Julka
Sahil Julka

Reputation: 85

Return code: 1 Output: Dockerfile and Dockerrun.aws.json are both missing, abort deployment

I have set up a CI/CD pipeline using Travis CI so that when i push the code to it automatically gets deployed to AWS beanstalk. I am using docker as a platform in AWS. When i push the code it passes through travis but aws shows the error "Command failed on instance. Return code: 1 Output: Dockerfile and Dockerrun.aws.json are both missing, abort deployment." I don't need dockerrun.aws.json as i am using a local docker image But not able to figure out why is this error being shown as there is a docker file.

Travis file

sudo: required
language: node_js
node_js:
  - "10.16.0"
sudo: true

addons:

  chrome: stable

branches:
  only:
    - master

before_script:
  - npm install -g @angular/cli

script:
  - ng test --watch=false --browsers=ChromeHeadless

deploy:
  provider: elasticbeanstalk
  access_key_id:
   secure: "$accesskey"
  secret_access_key:
    secure: "$AWS_SECRET_KEY"
  region: "us-east-2"
  app: "portfolio"
  env: "portfolio-env"
  bucket_name: "elasticbeanstalk-us-east-2-646900675324"
  bucket_path: "portfolio"

Dockerfile

FROM node:12.7.0-alpine as builder
WORKDIR /src/app
COPY package.json .
RUN npm install
COPY . .
RUN npm run build

# To copy the files from build folder to directory where nginx could serve up the files
FROM nginx 
EXPOSE 80
COPY --from=builder  /src/app/dist/portfio /usr/share/nginx/html

Any possible solution for this one ?

Upvotes: 1

Views: 1876

Answers (1)

cdfairchild
cdfairchild

Reputation: 51

I had the same issue. Turns out my dockerfile was not capitalized, and AWS is case sensitive. When I changed the file name to "Dockerfile", everything worked as expected.

Upvotes: 2

Related Questions