diff --git a/Dockerfile b/Dockerfile index 38b0858..55f992b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,15 +1,19 @@ -FROM node:18 - +FROM node:18 AS builder WORKDIR /spooty - COPY . . - -RUN apt-get -y update && apt-get -y upgrade && apt-get install -y --no-install-recommends ffmpeg - -RUN npm install - +RUN npm ci RUN npm run build +FROM node:18 +WORKDIR /spooty +COPY --from=builder /spooty/dist . +COPY --from=builder /spooty/src ./src +COPY --from=builder /spooty/package.json ./package.json +COPY --from=builder /spooty/package-lock.json ./package-lock.json +COPY --from=builder /spooty/src/backend/.env.default ./.env +RUN rm -rf node_modules +RUN npm ci --omit=dev +RUN apt-get -y update && apt-get -y upgrade && apt-get install -y --no-install-recommends ffmpeg +RUN rm -rf src package.json package-lock.json EXPOSE 3000 - -CMD ["npm", "run", "start"] \ No newline at end of file +CMD ["node", "backend/main.js"] \ No newline at end of file diff --git a/README.md b/README.md index f1a5229..d29b24e 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,7 @@ The project is based on NestJS and Angular. # 🚀 Instalation Recommended and the easiest way how to start to use of Spooty is using docker. ```shell -docker run -d -p 3000:3000 -v /path/to/downloads:/spooty/dist/backend/downloads spooty +docker run -d -p 3000:3000 -v /path/to/downloads:/spooty/backend/downloads spooty ``` # 📚 Documentation diff --git a/package.json b/package.json index 6d70ef9..6b1f3d6 100644 --- a/package.json +++ b/package.json @@ -15,7 +15,7 @@ "start": "npm run start:prod -w backend", "docs": "docsify serve ./docs", "deploy:docs": "npm run build:docs && netlify deploy --dir=dist/docs --prod", - "release": "npm run build && docker build -t raiper34/spooty:0.0.0 . && docker push raiper34/spooty:0.0.0" + "release": "npm run build && docker build -t raiper34/spooty:1.0.0 -t raiper34/spooty:latest . && docker push raiper34/spooty:1.0.0 && docker push raiper34/spooty:latest" }, "devDependencies": { "copy-files-from-to": "^3.2.2",