| FROM node:20-slim |
|
|
| WORKDIR /app |
|
|
| |
| RUN apt-get update && \ |
| DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \ |
| git \ |
| ca-certificates \ |
| build-essential \ |
| libcairo2-dev \ |
| libpango1.0-dev \ |
| libjpeg-dev \ |
| libgif-dev \ |
| librsvg2-dev \ |
| pkg-config \ |
| python3 \ |
| fonts-noto \ |
| fonts-noto-cjk \ |
| imagemagick \ |
| libssl-dev \ |
| uuid-dev \ |
| libvips-dev && \ |
| rm -rf /var/lib/apt/lists/* |
|
|
| |
| RUN --mount=type=secret,id=GITHUB_TOKEN,mode=0444 \ |
| --mount=type=secret,id=GITHUB_REPO,mode=0444 \ |
| git clone https://$(cat /run/secrets/GITHUB_TOKEN)@github.com/$(cat /run/secrets/GITHUB_REPO).git /app |
|
|
| |
| COPY package*.json ./ |
| RUN npm install --build-from-source=canvas |
|
|
| |
| COPY . . |
|
|
| EXPOSE 7860 |
|
|
| CMD ["npm", "start"] |
|
|