From b8c57f00884bb8db3d812e2e5bb02ffba554f0bc Mon Sep 17 00:00:00 2001 From: Mxu Date: Fri, 26 Sep 2025 17:36:25 +0800 Subject: [PATCH] enhancement: Optimize Dockerfile for China-friendly builds with prioritized domestic mirrors and fallback to global sources. --- Dockerfile | 46 ++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 38 insertions(+), 8 deletions(-) diff --git a/Dockerfile b/Dockerfile index d110240..4216326 100644 --- a/Dockerfile +++ b/Dockerfile @@ -9,12 +9,40 @@ RUN chmod 777 /MoneyPrinterTurbo ENV PYTHONPATH="/MoneyPrinterTurbo" -# Install system dependencies -RUN apt-get update && apt-get install -y \ - git \ - imagemagick \ - ffmpeg \ - && rm -rf /var/lib/apt/lists/* +# Install system dependencies with domestic mirrors first for stability +RUN echo "deb http://mirrors.aliyun.com/debian bullseye main" > /etc/apt/sources.list && \ + echo "deb http://mirrors.aliyun.com/debian-security bullseye-security main" >> /etc/apt/sources.list && \ + ( \ + for i in 1 2 3; do \ + echo "Attempt $i: Using Aliyun mirror"; \ + apt-get update && apt-get install -y --no-install-recommends \ + git \ + imagemagick \ + ffmpeg && break || \ + echo "Attempt $i failed, retrying..."; \ + if [ $i -eq 3 ]; then \ + echo "Aliyun mirror failed, switching to Tsinghua mirror"; \ + sed -i 's/mirrors.aliyun.com/mirrors.tuna.tsinghua.edu.cn/g' /etc/apt/sources.list && \ + sed -i 's/mirrors.aliyun.com\/debian-security/mirrors.tuna.tsinghua.edu.cn\/debian-security/g' /etc/apt/sources.list && \ + ( \ + apt-get update && apt-get install -y --no-install-recommends \ + git \ + imagemagick \ + ffmpeg || \ + ( \ + echo "Tsinghua mirror failed, switching to default Debian mirror"; \ + sed -i 's/mirrors.tuna.tsinghua.edu.cn/deb.debian.org/g' /etc/apt/sources.list && \ + sed -i 's/mirrors.tuna.tsinghua.edu.cn\/debian-security/security.debian.org/g' /etc/apt/sources.list; \ + apt-get update && apt-get install -y --no-install-recommends \ + git \ + imagemagick \ + ffmpeg; \ + ); \ + ); \ + fi; \ + sleep 5; \ + done \ + ) && rm -rf /var/lib/apt/lists/* # Fix security policy for ImageMagick RUN sed -i '/