Estoy tratando de enviar mis imágenes de Travis CI a Docker Hub.
Aquí está mi 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/htmlMi .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-clientLa razón por la que el empuje está fallando es porque este comando
docker build -t aseel/multi-client ./clientestá fallando en travis (pero no localmente).
Más específicamente, recibo este error en travis
COPY falló: stat /var/lib/docker/overlay2/135282513e177be132b6978986f878ba61f3b89914b6b2f7030cbafa0d33f629/merged/app/build: no existe tal archivo o directorio
¿Alguna idea de por qué sucede esto?
Necesitaba cambiar CMD a RUN. Fue un error bastante tonto.