# 使用原始镜像作为基础 FROM ghcr.io/fish2018/spansou-web # 环境变量配置 ENV TZ=Asia/Shanghai # 工作目录与文件复制 WORKDIR /app COPY start.sh /app/start.sh # 安装coreutils并设置权限,添加用户映射 RUN apk add --no-cache coreutils && \ echo "pansou:x:1000:1000:pansou user:/app:/sbin/nologin" >> /etc/passwd && \ chmod +x /app/start.sh /app/pansou && \ mkdir -p /data/pansou_data /data/pansou_logs && \ chown -R 1000:1000 /app /data/pansou_data /data/pansou_logs && \ chmod 755 /data/pansou_data /data/pansou_logs # 以UID 1000运行 USER 1000 # 健康检查(120秒间隔) HEALTHCHECK --interval=120s --timeout=10s --start-period=30s --retries=3 \ CMD curl -f -m 2 http://127.0.0.1:8888/api/health || exit 1 # 暴露端口 EXPOSE 7860 # 启动配置 CMD ["/app/start.sh"]