123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- FROM node:20
- LABEL maintainer="requarks.io"
- RUN apt-get update && apt-get install -qy --no-install-recommends \
- bash \
- build-essential \
- curl \
- git \
- gnupg \
- openssh-client \
- pandoc \
- && rm -rf /var/lib/apt/lists/*
- RUN mkdir -p /wiki && \
- mkdir -p /logs && \
- mkdir -p /wiki/data/content && \
- chown -R node:node /wiki /logs
- RUN corepack enable && \
- corepack prepare pnpm@latest --activate
- WORKDIR /wiki
- COPY --chown=node:node ./assets ./assets
- COPY --chown=node:node ./blocks/compiled ./blocks/compiled
- COPY --chown=node:node ./server ./server
- COPY --chown=node:node ./dev/build/config.yml ./config.yml
- COPY --chown=node:node ./LICENSE ./LICENSE
- USER node
- ENV NODE_ENV=production
- WORKDIR /wiki/server
- RUN pnpm install --prod --frozen-lockfile
- # Set extensions as installed
- RUN touch node_modules/sharp/wiki_installed.txt
- WORKDIR /wiki
- VOLUME ["/wiki/data/content"]
- EXPOSE 3000
- EXPOSE 3443
- CMD ["node", "server"]
|