From 2f1a7633670e14affa9c35f3d35a3298af5369bf Mon Sep 17 00:00:00 2001 From: mtvpls Date: Mon, 1 Jun 2026 15:54:10 +0800 Subject: [PATCH] =?UTF-8?q?dockerfile=E5=BB=BA=E7=AB=8B=E9=BB=98=E8=AE=A4?= =?UTF-8?q?=E7=A6=BB=E7=BA=BF=E4=B8=8B=E8=BD=BD=E7=9B=AE=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Dockerfile | 6 ++++-- Dockerfile.lite | 4 ++++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 3453178..8412147 100644 --- a/Dockerfile +++ b/Dockerfile @@ -46,6 +46,7 @@ ENV HOSTNAME=0.0.0.0 ENV PORT=3000 ENV DOCKER_ENV=true ENV SQLITE_DB_PATH=/app/.data/moontv.db +ENV OFFLINE_DOWNLOAD_DIR=/data # 从构建器中复制 standalone 输出 COPY --from=builder --chown=nextjs:nodejs /app/.next/standalone ./ @@ -68,8 +69,9 @@ COPY --from=builder --chown=nextjs:nodejs /app/.next/static ./.next/static # 从构建器中复制生产依赖(包含 Socket.IO / better-sqlite3) COPY --from=builder --chown=nextjs:nodejs /tmp/prod-deps/node_modules ./node_modules -# 准备 SQLite 数据目录 -RUN mkdir -p /app/.data && chown -R nextjs:nodejs /app/.data +# 准备 SQLite 数据目录和默认离线下载目录 +RUN mkdir -p /app/.data "$OFFLINE_DOWNLOAD_DIR" \ + && chown -R nextjs:nodejs /app/.data "$OFFLINE_DOWNLOAD_DIR" # 切换到非特权用户 USER nextjs diff --git a/Dockerfile.lite b/Dockerfile.lite index 4c997c4..58b949c 100644 --- a/Dockerfile.lite +++ b/Dockerfile.lite @@ -21,6 +21,7 @@ ENV DOCKER_ENV=true ENV MOONTV_LITE=true ENV WATCH_ROOM_ENABLED=false ENV WATCH_ROOM_SERVER_TYPE=external +ENV OFFLINE_DOWNLOAD_DIR=/data RUN pnpm run build @@ -47,6 +48,9 @@ COPY --from=builder --chown=nextjs:nodejs /app/src/lib/tv-remote-hub.js ./src/li COPY --from=builder --chown=nextjs:nodejs /app/public ./public COPY --from=builder --chown=nextjs:nodejs /app/.next/static ./.next/static +# 准备默认离线下载目录 +RUN mkdir -p "$OFFLINE_DOWNLOAD_DIR" && chown -R nextjs:nodejs "$OFFLINE_DOWNLOAD_DIR" + USER nextjs EXPOSE 3000