1

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 ?

1 Answer 1

2

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.

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.