Docker Сбой сборки на Travis -> не могу найти приложение / построить - PullRequest
1 голос
/ 22 марта 2020

Я пытаюсь сделать sh мои изображения из Travis CI в docker хаб.

Вот мой Dockerfile

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


FROM nginx
EXPOSE 3000
COPY ./nginx/default.conf /etc/nginx/conf.d/default.conf
COPY --from=builder /app/build /usr/share/nginx/html

Мой .travis.yml

sudo: required
services:
  - docker

before_install:
  - docker build -t aseel/react-test -f ./client/Dockerfile.dev ./client

script:
  - docker run -e CI=true aseel/react-test npm run test

after_success:
  - docker build -t aseel/multi-client ./client
  - docker build -t aseel/multi-nginx ./nginx
  - docker build -t aseel/multi-server ./server
  - docker build -t aseel/multi-worker ./worker
  - echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_ID" --password-stdin
  - docker push aseel/multi-server
  - docker push aseel/multi-nginx
  - docker push aseel/multi-worker
  - docker push aseel/multi-client

Причина сбоя pu sh заключается в том, что эта команда

docker build -t aseel/multi-client ./client

не работает на travis (но не локально).

Более конкретно, я получаю эту ошибку на travis

COPY не удалось: stat / var / lib / docker / overlay2 / 135282513e177be132b6978986f878ba61f3b89914b6b2f7030cbafa0d33f629 / merged / app / build: нет такого файла или каталога

Есть идеи, почему это происходит?

1 Ответ

0 голосов
/ 22 марта 2020

Мне нужно было переключить CMD в RUN - это была довольно глупая ошибка

...