Gitea 添加 jupyter 支持

论文的部分代码需要用到 jupyter,但是 Gitea 本身不像 Github 那样支持 jupyter notebook 的渲染
因此,需要为其添加 jupyter 支持

官网已经有了对应的教程: External renderers - Docs
但可惜的是没有对应的镜像

因此对照对应的内容,编译一个支持 jupyter 的 Gitea 镜像
(如果有需要,可以直接使用 ohyee/gitea:latest

2021-12-31 更新,添加了 curl 依赖

ARG TAG=latest
FROM gitea/gitea:${TAG}

RUN sed -i 's/https/http/' /etc/apk/repositories && \
    apk add curl && \
    apk --no-cache add \
    asciidoctor \
    freetype \
    freetype-dev \
    gcc \
    g++ \
    libpng \
    libffi-dev \
    py-pip \
    python3-dev \
    py3-pip \
    py3-pyzmq

RUN pip3 install --upgrade pip && \
    pip3 install -U setuptools && \
    pip3 install jupyter docutils

每次有新的版本,只需要执行下面的脚本

#!/bin/bash

export TAG=1.15.3

docker build --build-arg TAG=${TAG} -t ohyee/gitea:${TAG} . && \
docker tag ohyee/gitea:${TAG} ohyee/gitea:latest
docker push ohyee/gitea:${TAG}
docker push ohyee/gitea:latest

除此之外,在 gitea/conf/app.ini 中还需要添加

[markup.jupyter]
ENABLED = true
FILE_EXTENSIONS = .ipynb
RENDER_COMMAND = "jupyter-nbconvert --stdin --stdout --to html --template basic"

[markup.sanitizer.jupyter.img]
ALLOW_DATA_URI_IMAGES = true