mirror of
https://github.com/yusing/godoxy.git
synced 2026-05-13 00:48:39 -05:00
0e4dfcdc7d
Add godoxy-webui submodule and Dockerfile stages that install Bun/Node, run schema generation, produce a production Vite build, copy dist into the main image, and publish separate scratch targets for agent and socket-proxy. Makefile defaults WEBUI_DIR to ./webui, adds build-webui and ensure-webui-dist for embedded builds/tests, introduces dev=1 and updates `dev`/`dev-build`; docker-build-test pins build targets and the workflow forwards targets to buildx. Load `webui` YAML aliases (fallback to legacy frontend env aliases when unset). Serve production UI from embedded `fs.FS` fileservers with SPA routing and presets; in non-production, when `./webui` is present, register a localhost Vite dev proxy (`webui_dev.yml`) and optionally auto-start bun dev server. Attach webui compose volume; switch dev base image to Bun; drop the standalone frontend service and related env hints. Extend static-provider handling, preset rules/metadata, fileserver SPA behavior for RootFS roots, README/examples, smoke/config tests; bump the webui submodule pin.
63 lines
2.0 KiB
Bash
63 lines
2.0 KiB
Bash
DOCKER_SOCKET=/var/run/user/1000/docker.sock
|
|
LISTEN_ADDR=socket-proxy:2375
|
|
|
|
# docker image tag (latest, nightly)
|
|
TAG=latest
|
|
|
|
# set timezone to get correct log timestamp
|
|
TZ=ETC/UTC
|
|
|
|
# Set GODOXY_API_JWT_SECURE=false to allow http
|
|
GODOXY_API_JWT_SECURE=true
|
|
# API JWT Configuration (common)
|
|
# generate secret with `openssl rand -base64 32`
|
|
GODOXY_API_JWT_SECRET=
|
|
# the JWT token time-to-live
|
|
# leave empty to use default (24 hours)
|
|
# format: https://pkg.go.dev/time#Duration
|
|
GODOXY_API_JWT_TOKEN_TTL=
|
|
|
|
# API/WebUI user password login credentials (optional)
|
|
# These fields are not required for OIDC authentication
|
|
GODOXY_API_USER=admin
|
|
GODOXY_API_PASSWORD=password
|
|
|
|
# OIDC Configuration (optional)
|
|
# Uncomment and configure these values to enable OIDC authentication.
|
|
#
|
|
# GODOXY_OIDC_ISSUER_URL=https://accounts.google.com
|
|
# GODOXY_OIDC_CLIENT_ID=your-client-id
|
|
# GODOXY_OIDC_CLIENT_SECRET=your-client-secret
|
|
# GODOXY_OIDC_SCOPES=openid, profile, email, groups # you may also include `offline_access` if your Idp supports it (e.g. Authentik, Pocket ID)
|
|
#
|
|
# User definitions: Uncomment and configure these values to restrict access to specific users or groups.
|
|
# These two fields act as a logical AND operator. For example, given the following membership:
|
|
# user1, group1
|
|
# user2, group1
|
|
# user3, group2
|
|
# user1, group2
|
|
# You can allow access to user3 AND all users of group1 by providing:
|
|
# # GODOXY_OIDC_ALLOWED_USERS=user3
|
|
# # GODOXY_OIDC_ALLOWED_GROUPS=group1
|
|
#
|
|
# Comma-separated list of allowed users.
|
|
# GODOXY_OIDC_ALLOWED_USERS=user1,user2
|
|
# Optional: Comma-separated list of allowed groups.
|
|
# GODOXY_OIDC_ALLOWED_GROUPS=group1,group2
|
|
|
|
# Enable HTTP3
|
|
GODOXY_HTTP3_ENABLED=true
|
|
|
|
# Metrics
|
|
GODOXY_METRICS_DISABLE_CPU=false
|
|
GODOXY_METRICS_DISABLE_MEMORY=false
|
|
GODOXY_METRICS_DISABLE_DISK=false
|
|
GODOXY_METRICS_DISABLE_NETWORK=false
|
|
GODOXY_METRICS_DISABLE_SENSORS=false
|
|
|
|
# Debug mode
|
|
GODOXY_DEBUG=false
|
|
|
|
# use bytedance/sonic library for efficient json handling, disable if you see "SIGILL: illegal instructions"
|
|
USE_SONIC_JSON=true
|