| FROM ghcr.io/chenyme/grok2api:latest |
|
|
| ENV TZ=Asia/Shanghai \ |
| LOG_LEVEL=INFO \ |
| SERVER_PORT=8000 \ |
| SERVER_WORKERS=1 \ |
| SERVER_STORAGE_TYPE=local |
|
|
| RUN mkdir -p /app/data /app/logs && chmod -R 777 /app/data /app/logs /app/scripts |
|
|
| |
| RUN echo '#!/bin/sh' > /app/start.sh && \ |
| echo 'set -e' >> /app/start.sh && \ |
| echo '/app/scripts/init_storage.sh' >> /app/start.sh && \ |
| echo 'CONFIG="/app/data/config.toml"' >> /app/start.sh && \ |
| echo 'if [ -n "$APP_KEY" ]; then' >> /app/start.sh && \ |
| echo ' sed -i "s|^app_key = .*|app_key = \"$APP_KEY\"|" "$CONFIG"' >> /app/start.sh && \ |
| echo 'fi' >> /app/start.sh && \ |
| echo 'if [ -n "$API_KEY" ]; then' >> /app/start.sh && \ |
| echo ' sed -i "s|^api_key = .*|api_key = \"$API_KEY\"|" "$CONFIG"' >> /app/start.sh && \ |
| echo 'fi' >> /app/start.sh && \ |
| echo 'exec uvicorn main:app --host 0.0.0.0 --port 8000' >> /app/start.sh && \ |
| chmod +x /app/start.sh |
|
|
| EXPOSE 8000 |
|
|
| ENTRYPOINT [] |
| CMD ["/app/start.sh"] |
|
|