Spaces:
Sleeping
Sleeping
| FROM ubuntu:22.04 | |
| ENV DEBIAN_FRONTEND=noninteractive | |
| RUN apt-get update && apt-get install -y \ | |
| python3 \ | |
| python3-pip \ | |
| python3-venv \ | |
| git \ | |
| fontconfig \ | |
| fonts-noto-cjk \ | |
| fonts-noto-color-emoji \ | |
| libfontconfig1 \ | |
| libgl1 \ | |
| libglx-mesa0 \ | |
| libgl1-mesa-dri \ | |
| libegl1 \ | |
| libegl-mesa0 \ | |
| && rm -rf /var/lib/apt/lists/* | |
| # 先取一份固定版本,用来复制内置字体 | |
| RUN git clone --branch v0.0.20 --depth 1 https://github.com/MeetWq/meme-generator.git /tmp/meme-generator \ | |
| && mkdir -p /usr/share/fonts/meme \ | |
| && cp /tmp/meme-generator/resources/fonts/* /usr/share/fonts/meme/ \ | |
| && fc-cache -fv \ | |
| && rm -rf /tmp/meme-generator | |
| RUN useradd -m -u 1000 user | |
| USER user | |
| ENV HOME=/home/user | |
| ENV PATH=$HOME/.local/bin:$PATH | |
| ENV POETRY_CONFIG_DIR=$HOME/app/.poetry_config | |
| WORKDIR $HOME/app | |
| COPY --chown=user . $HOME/app | |
| # 这里也锁同一个版本,避免前后版本不一致 | |
| RUN git clone --branch v0.0.20 --depth 1 https://github.com/MeetWq/meme-generator.git | |
| RUN pip install --no-cache-dir poetry | |
| RUN git clone --depth 1 https://github.com/MeetWq/meme-generator-contrib.git \ | |
| && mkdir -p $HOME/meme-extend \ | |
| && mv meme-generator-contrib/memes/* $HOME/meme-extend \ | |
| && rm -rf meme-generator-contrib | |
| RUN mkdir -p $HOME/.config/meme_generator | |
| COPY --chown=user config.toml $HOME/.config/meme_generator/config.toml | |
| # 你的自定义覆盖 | |
| COPY --chown=user utils.py $HOME/app/meme-generator/meme_generator/ | |
| COPY --chown=user dianzhongdian/__init__.py $HOME/app/meme-generator/meme_generator/memes/dianzhongdian/ | |
| RUN cd meme-generator \ | |
| && poetry config virtualenvs.in-project true \ | |
| && poetry install \ | |
| && . .venv/bin/activate \ | |
| && python3 -m meme_generator.download | |
| CMD cd meme-generator && . .venv/bin/activate && python3 -m meme_generator.app |