gemini-balance / Dockerfile
snemc's picture
Update Dockerfile
14f9ec7 verified
FROM ghcr.io/snailyp/gemini-balance:latest
EXPOSE 7860
WORKDIR /app
RUN mkdir /app/data && chmod -R 777 /app/data
# 数据库配置
ENV DATABASE_TYPE=sqlite
ENV SQLITE_DATABASE=default_db
ENV API_KEYS='["AIzaSyxxxxxxxxxxxxxxxxxxx","AIzaSyxxxxxxxxxxxxxxxxxxx"]'
ENV TEST_MODEL=gemini-1.5-flash
ENV THINKING_MODELS='["gemini-2.5-flash-preview-04-17","gemini-2.5-pro-exp-03-25"]'
ENV THINKING_BUDGET_MAP='{"gemini-2.5-flash-preview-04-17":4000}'
ENV IMAGE_MODELS='["gemini-2.0-flash-exp"]'
ENV SEARCH_MODELS='["gemini-2.0-flash-exp","gemini-2.0-pro-exp"]'
ENV FILTERED_MODELS='["gemini-1.0-pro-vision-latest","gemini-pro-vision","chat-bison-001","text-bison-001","embedding-gecko-001"]'
ENV TOOLS_CODE_EXECUTION_ENABLED=false
ENV SHOW_SEARCH_LINK=true
ENV SHOW_THINKING_PROCESS=true
ENV BASE_URL=https://generativelanguage.googleapis.com/v1beta
ENV MAX_FAILURES=10
ENV MAX_RETRIES=3
ENV CHECK_INTERVAL_HOURS=1
ENV TIMEZONE=Asia/Shanghai
# 请求超时时间(秒)
ENV TIME_OUT=300
# 代理服务器配置 (支持 http 和 socks5)
# 示例: PROXIES=["http://user:pass@host:port", "socks5://host:port"]
ENV PAID_KEY=AIzaSyxxxxxxxxxxxxxxxxxxx
ENV CREATE_IMAGE_MODEL=imagen-3.0-generate-002
ENV UPLOAD_PROVIDER=smms
ENV SMMS_SECRET_TOKEN=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
ENV PICGO_API_KEY=xxxx
ENV CLOUDFLARE_IMGBED_URL=https://xxxxxxx.pages.dev/upload
ENV CLOUDFLARE_IMGBED_AUTH_CODE=xxxxxxxxx
ENV STREAM_OPTIMIZER_ENABLED=false
ENV STREAM_MIN_DELAY=0.016
ENV STREAM_MAX_DELAY=0.024
ENV STREAM_SHORT_TEXT_THRESHOLD=10
ENV STREAM_LONG_TEXT_THRESHOLD=50
ENV STREAM_CHUNK_SIZE=5
ENV LOG_LEVEL=info
# 是否开启自动删除错误日志
ENV AUTO_DELETE_ERROR_LOGS_ENABLED=true
# 自动删除多少天前的错误日志 (1, 7, 30)
ENV AUTO_DELETE_ERROR_LOGS_DAYS=7
# 是否开启自动删除请求日志
ENV AUTO_DELETE_REQUEST_LOGS_ENABLED=false
# 自动删除多少天前的请求日志 (1, 7, 30)
ENV AUTO_DELETE_REQUEST_LOGS_DAYS=30
#########################################
# 假流式配置 (Fake Streaming Configuration)
ENV FAKE_STREAM_ENABLED=False
ENV FAKE_STREAM_EMPTY_DATA_INTERVAL_SECONDS=5
# # 安全设置 (JSON 字符串格式)
# # 注意:这里的示例值可能需要根据实际模型支持情况调整
ENV SAFETY_SETTINGS='[{"category": "HARM_CATEGORY_HARASSMENT", "threshold": "OFF"}, {"category": "HARM_CATEGORY_HATE_SPEECH", "threshold": "OFF"}, {"category": "HARM_CATEGORY_SEXUALLY_EXPLICIT", "threshold": "OFF"}, {"category": "HARM_CATEGORY_DANGEROUS_CONTENT", "threshold": "OFF"}, {"category": "HARM_CATEGORY_CIVIC_INTEGRITY", "threshold": "BLOCK_NONE"}]'
CMD ["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "7860"]