mirror of
https://github.com/tiennm99/ghglance.git
synced 2026-10-11 03:13:20 +00:00
The web UI is for a quick look at a profile, not for hosting embeddable images. Cards are inlined into /u/<user> as data: images, the per-card route is gone, and the page no longer offers copy links or Markdown snippets. The page itself stays shareable. Visitors can again paste their own token, with a button that opens GitHub's new-token page with the needed scopes ticked. A pasted token takes precedence over sign-in, follows the same ownership, privacy and cooldown rules, is never stored or logged, and is not revoked. The server still uses no token of its own.
31 lines
1.2 KiB
YAML
31 lines
1.2 KiB
YAML
# ghglance web UI, built from this repo's Dockerfile.
|
|
services:
|
|
ghglance:
|
|
build: .
|
|
entrypoint: ["ghglance"]
|
|
command: ["-serve", ":8080", "-data-dir", "/data", "-retention", "24h"]
|
|
restart: unless-stopped
|
|
# Tells Coolify's proxy which container port to route to, even when the
|
|
# domain is entered without a ":8080" suffix.
|
|
expose:
|
|
- "8080"
|
|
environment:
|
|
- SERVICE_FQDN_GHGLANCE_8080
|
|
# "Sign in with GitHub" (a GitHub OAuth App) is required. The server
|
|
# has no token of its own: every generation runs on the visitor's
|
|
# sign-in token or a token they paste into the form.
|
|
- GHGLANCE_OAUTH_CLIENT_ID=${GHGLANCE_OAUTH_CLIENT_ID:?set the GitHub OAuth App client ID}
|
|
- GHGLANCE_OAUTH_CLIENT_SECRET=${GHGLANCE_OAUTH_CLIENT_SECRET:?set the GitHub OAuth App client secret}
|
|
- GHGLANCE_PUBLIC_URL=${GHGLANCE_PUBLIC_URL:?set the external origin, e.g. https://ghglance.example.com}
|
|
volumes:
|
|
- ghglance-data:/data
|
|
healthcheck:
|
|
test: ["CMD", "wget", "-qO-", "http://127.0.0.1:8080/healthz"]
|
|
interval: 30s
|
|
timeout: 5s
|
|
retries: 3
|
|
start_period: 10s
|
|
|
|
volumes:
|
|
ghglance-data:
|