Spaces:
Paused
Paused
| ARG NODE_VERSION=20.11.1 | |
| ARG PNPM_VERSION=8.15.4 | |
| ARG TS_VERSION=5.3.3 | |
| # Builder stage | |
| FROM node:${NODE_VERSION} as build | |
| WORKDIR /usr/src/app | |
| RUN npm install -g typescript@${TS_VERSION} | |
| RUN npm install -g pnpm@${PNPM_VERSION} | |
| COPY package.json pnpm-lock.yaml ./ | |
| COPY patches ./patches | |
| COPY . . | |
| RUN pnpm prune --prod | |
| # Runner stage | |
| FRM node:${NODE_VERSION}-slim as final | |
| WORKDIR /usr/src/app | |
| COPY package.json | |
| ENV NODE_ENV production | |
| ENV PORT 7860 | |
| ENV DOWNLOAD_DIR /data | |
| ENV KEEP_DOWNLOADED_FILES false | |
| ENV MAX_CONNS_PER_TORRENT 50 | |
| ENV DOWNLOAD_SPEED_LIMIT 20971520 | |
| ENV UPLOAD_SPEED_LIMIT 1048576 | |
| ENV SEED_TIME 60000 | |
| ENV TORRENT_TIMEOUT 5000 | |
| VOLUME /data | |
| RUN mkdir -p /data && \ | |
| chown -R node:node /data && \ | |
| chmod -R 755 /usr/src/app | |
| USER node | |
| EXPOSE 7860 | |
| CMD ["node", "--no-warnings", "dist/index.js"] | |