From 2fe5febaf00257f716c6fe9915f61f006ee8bac3 Mon Sep 17 00:00:00 2001 From: Menghuan1918 Date: Mon, 14 Oct 2024 00:25:28 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=BAbuild-with-latex=E7=89=88=E6=9C=ACDock?= =?UTF-8?q?er=E6=9E=84=E5=BB=BA=E6=96=B0=E5=A2=9Earm64=E6=94=AF=E6=8C=81?= =?UTF-8?q?=20(#1994)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Add arm64 support * Bug fix * Some build bug fix * Add arm support * 分离arm和x86构建 * 改进构建文档 * update tags * Update build-with-latex-arm.yml * Revert "Update build-with-latex-arm.yml" This reverts commit 9af92549b50f82b634173465d1338f84ced21bc9. * Update * Add * httpx * Addison * Update GithubAction+NoLocal+Latex * Update docker-compose.yml and GithubAction+NoLocal+Latex * Update README.md * test math anim generation * solve the pdf concatenate error. (#2006) * solve the pdf concatenate error. * add legacy fallback option --------- Co-authored-by: binary-husky --------- Co-authored-by: binary-husky <96192199+binary-husky@users.noreply.github.com> Co-authored-by: binary-husky Co-authored-by: wsg1873 --- .github/workflows/build-with-latex-arm.yml | 51 ++++++++++++++++++++++ docs/GithubAction+NoLocal+Latex | 34 +++++---------- 2 files changed, 61 insertions(+), 24 deletions(-) create mode 100644 .github/workflows/build-with-latex-arm.yml diff --git a/.github/workflows/build-with-latex-arm.yml b/.github/workflows/build-with-latex-arm.yml new file mode 100644 index 00000000..2f00457a --- /dev/null +++ b/.github/workflows/build-with-latex-arm.yml @@ -0,0 +1,51 @@ +# https://docs.github.com/en/actions/publishing-packages/publishing-docker-images#publishing-images-to-github-packages +name: build-with-latex-arm + +on: + push: + branches: + - "master" + +env: + REGISTRY: ghcr.io + IMAGE_NAME: ${{ github.repository }}_with_latex_arm + +jobs: + build-and-push-image: + runs-on: ubuntu-latest + permissions: + contents: read + packages: write + + steps: + - name: Set up QEMU + uses: docker/setup-qemu-action@v3 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Log in to the Container registry + uses: docker/login-action@v3 + with: + registry: ${{ env.REGISTRY }} + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + + - name: Extract metadata (tags, labels) for Docker + id: meta + uses: docker/metadata-action@v4 + with: + images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} + + - name: Build and push Docker image + uses: docker/build-push-action@v6 + with: + context: . + push: true + platforms: linux/arm64 + file: docs/GithubAction+NoLocal+Latex + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }} \ No newline at end of file diff --git a/docs/GithubAction+NoLocal+Latex b/docs/GithubAction+NoLocal+Latex index 00a3b6ab..533c6e35 100644 --- a/docs/GithubAction+NoLocal+Latex +++ b/docs/GithubAction+NoLocal+Latex @@ -3,33 +3,19 @@ # - 2 构建 docker build -t gpt-academic-nolocal-latex -f docs/GithubAction+NoLocal+Latex . # - 3 运行 docker run -v /home/fuqingxu/arxiv_cache:/root/arxiv_cache --rm -it --net=host gpt-academic-nolocal-latex -FROM fuqingxu/python311_texlive_ctex:latest -ENV PATH "$PATH:/usr/local/texlive/2022/bin/x86_64-linux" -ENV PATH "$PATH:/usr/local/texlive/2023/bin/x86_64-linux" -ENV PATH "$PATH:/usr/local/texlive/2024/bin/x86_64-linux" -ENV PATH "$PATH:/usr/local/texlive/2025/bin/x86_64-linux" -ENV PATH "$PATH:/usr/local/texlive/2026/bin/x86_64-linux" - -# 指定路径 +FROM menghuan1918/ubuntu_uv_ctex:latest +ENV DEBIAN_FRONTEND=noninteractive +SHELL ["/bin/bash", "-c"] WORKDIR /gpt - -RUN pip3 install openai numpy arxiv rich -RUN pip3 install colorama Markdown pygments pymupdf -RUN pip3 install python-docx pdfminer -RUN pip3 install nougat-ocr - -# 装载项目文件 COPY . . - - -# 安装依赖 -RUN pip3 install -r requirements.txt - -# edge-tts需要的依赖 -RUN apt update && apt install ffmpeg -y +RUN /root/.cargo/bin/uv venv --seed \ + && source .venv/bin/activate \ + && /root/.cargo/bin/uv pip install openai numpy arxiv rich colorama Markdown pygments pymupdf python-docx pdfminer \ + && /root/.cargo/bin/uv pip install -r requirements.txt \ + && /root/.cargo/bin/uv clean # 可选步骤,用于预热模块 -RUN python3 -c 'from check_proxy import warm_up_modules; warm_up_modules()' +RUN .venv/bin/python3 -c 'from check_proxy import warm_up_modules; warm_up_modules()' # 启动 -CMD ["python3", "-u", "main.py"] +CMD [".venv/bin/python3", "-u", "main.py"]