🔧 修复内容: - 统一JAR文件路径为 clouddisk.jar - 移除未使用的 VERSION 环境变量 - 保持构建时 VERSION 参数用于定位源文件 ✅ 现在两种部署方式完全兼容: - Dockerfile: 传统构建方式 - Dockerfile.git: Git仓库构建方式
51 lines
1.2 KiB
Docker
51 lines
1.2 KiB
Docker
FROM ghcr.io/jamebal/jdk21_ffmpeg:latest
|
|
|
|
ARG VERSION
|
|
|
|
ENV MONGODB_URI "mongodb://mongo:27017/jmalcloud"
|
|
ENV RUN_ENVIRONMENT prod
|
|
ENV JVM_OPTS ""
|
|
ENV LOG_LEVEL warn
|
|
|
|
# 是否开启精确搜索
|
|
ENV EXACT_SEARCH false
|
|
ENV NGRAM_MAX_CONTENT_LENGTH_MB "5"
|
|
ENV NGRAM_MIN_SIZE "2"
|
|
ENV NGRAM_MAX_SIZE "6"
|
|
|
|
ENV FILE_MONITOR true
|
|
ENV MONITOR_IGNORE_FILE_PREFIX ".DS_Store,._"
|
|
ENV FILE_ROOT_DIR /jmalcloud/files
|
|
ENV TESS4J_DATA_PATH /jmalcloud/tess4j/datapath
|
|
|
|
ADD target/clouddisk-${VERSION}.jar /usr/local/clouddisk.jar
|
|
|
|
VOLUME /jmalcloud/
|
|
|
|
# 设置支持的平台
|
|
ARG TARGETPLATFORM
|
|
RUN echo "Building for platform: $TARGETPLATFORM"
|
|
LABEL org.label-schema.build.multi-platform=true
|
|
ENV PLATFORM=$TARGETPLATFORM
|
|
|
|
# 将 Linux/arm64/v8 架构设置为默认平台
|
|
# 如果需要,可以根据需要更改此设置
|
|
ENV DOCKER_DEFAULT_PLATFORM=linux/amd64,linux/arm64
|
|
|
|
COPY docker-entrypoint.sh /docker-entrypoint.sh
|
|
|
|
RUN apt-get update && \
|
|
apt-get install -y gosu && \
|
|
chmod +x /docker-entrypoint.sh && \
|
|
rm -rf /var/lib/apt/lists/*
|
|
|
|
EXPOSE 8088
|
|
|
|
# FTP Server
|
|
EXPOSE 8089
|
|
|
|
HEALTHCHECK --interval=30s --timeout=3s --start-period=60s --retries=3 \
|
|
CMD curl -f http://localhost:8088/public/health > /dev/null || exit 1
|
|
|
|
ENTRYPOINT ["/docker-entrypoint.sh"]
|