返回代码:1 输出:Dockerfile 和 Dockerrun.aws.json 都丢失,中止部署



我已经使用 Travis CI 设置了一个 CI/CD 管道,以便当我将代码推送到它时,它会自动部署到 AWS beanstalk 中。 我正在使用 docker 作为 AWS 中的平台。 当我推送代码时,它会通过 travis 但 aws 显示错误"实例上的命令失败。返回代码:1 输出:Dockerfile 和 Dockerrun.aws.json 都丢失了,中止部署。 我不需要dockerrun.aws.json,因为我使用的是本地docker映像 但是无法弄清楚为什么显示此错误,因为有一个 docker 文件。

特拉维斯文件

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

这个有什么可能的解决方案吗?

我遇到了同样的问题。事实证明,我的 dockerfile 没有大写,并且 AWS 区分大小写。当我将文件名更改为"Dockerfile"时,一切都按预期工作。

最新更新