| | |
| | |
| | FROM mcr.microsoft.com/playwright:v1.55.0-jammy AS build |
| |
|
| | |
| | RUN apt-get update && apt-get install -y git git-lfs wget && apt-get clean |
| |
|
| | |
| | RUN wget -qO- https://github.com/jgm/pandoc/releases/download/3.8/pandoc-3.8-linux-amd64.tar.gz | tar xzf - -C /tmp && \ |
| | cp /tmp/pandoc-3.8/bin/pandoc /usr/local/bin/ && \ |
| | cp /tmp/pandoc-3.8/bin/pandoc-lua /usr/local/bin/ && \ |
| | rm -rf /tmp/pandoc-3.8 |
| |
|
| | |
| | WORKDIR /app |
| |
|
| | |
| | COPY app/package*.json ./ |
| |
|
| | |
| | RUN npm install |
| |
|
| | |
| | COPY app/ . |
| |
|
| | |
| | ARG ENABLE_LATEX_CONVERSION=true |
| | RUN if [ "$ENABLE_LATEX_CONVERSION" = "true" ]; then \ |
| | echo "🔄 LaTeX importer enabled - running latex:convert..."; \ |
| | npm run latex:convert; \ |
| | else \ |
| | echo "⏭️ LaTeX importer disabled - skipping..."; \ |
| | fi |
| |
|
| | |
| | |
| | |
| | RUN set -e; \ |
| | if [ -e public ] && [ ! -d public ]; then rm -f public; fi; \ |
| | mkdir -p public; \ |
| | if [ -L public/data ] || { [ -e public/data ] && [ ! -d public/data ]; }; then rm -f public/data; fi; \ |
| | mkdir -p public/data; \ |
| | cp -a src/content/assets/data/. public/data/ |
| |
|
| | |
| | RUN npm run build |
| |
|
| | |
| | RUN npm run export:pdf -- --theme=light --wait=full |
| |
|
| | |
| | FROM nginx:alpine |
| |
|
| | |
| | COPY --from=build /app/dist /usr/share/nginx/html |
| |
|
| | |
| | COPY nginx.conf /etc/nginx/nginx.conf |
| |
|
| | |
| | RUN mkdir -p /var/cache/nginx /var/run /var/log/nginx && \ |
| | chmod -R 777 /var/cache/nginx /var/run /var/log/nginx /etc/nginx/nginx.conf |
| |
|
| | |
| | USER nginx |
| |
|
| | |
| | EXPOSE 8080 |
| |
|
| | |
| | CMD ["nginx", "-g", "daemon off;"] |
| |
|