v2.31.0-dev11 0c0cc56

gordon.toml.example RawHistoryFolder

1# Gordon example configuration
2# Copy this file to ~/.config/gordon/gordon.toml and adjust for your domain.
3
4[server]
5port = 8088
6registry_port = 5000
7gordon_domain = "gordon.example.com"
8# data_dir = "~/.gordon"
9
10[auth]
11enabled = true
12# Use "pass" or "sops" in production. The unsafe backend reads a local file
13# under server.data_dir/secrets and is intended for development only.
14secrets_backend = "pass"
15token_secret = "gordon/auth/token_secret"
16token_expiry = "30d"
17access_token_ttl = "15m"
18
19[api.rate_limit]
20enabled = true
21global_rps = 500
22per_ip_rps = 50
23burst = 100
24trusted_proxies = []
25
26[deploy]
27pull_policy = "if-tag-changed"
28readiness_mode = "auto"
29health_timeout = "90s"
30readiness_delay = "5s"
31drain_mode = "auto"
32drain_timeout = "30s"
33drain_delay = "2s"
34
35[containers]
36# "compat" preserves broad image compatibility. "strict" enables a read-only
37# root filesystem and narrower Linux capabilities.
38security_profile = "compat"
39
40[network_isolation]
41enabled = true
42network_prefix = "gordon"
43# Set true to create Docker internal networks without direct external egress.
44internal = false
45
46[volumes]
47auto_create = true
48prefix = "gordon"
49preserve = true
50
51[images]
52# Explicit external registries must be listed here. Gordon's own registry is
53# always allowed; localhost/private/link-local registries are always rejected.
54allowed_registries = []
55# Require @sha256:<digest> for allowlisted external registries.
56require_digest = false
57
58[images.prune]
59enabled = false
60schedule = "daily"
61keep_last = 3
62
63[auto_route]
64enabled = false
65
66[logging]
67level = "info"
68format = "console"
69
70[logging.container_logs]
71enabled = true
72
73[backups]
74enabled = false
75schedule = "daily"
76storage_dir = ""
77
78[backups.retention]
79hourly = 0
80daily = 0
81weekly = 0
82monthly = 0
83
84[routes]
85# "app.example.com" = { image = "myapp:latest" }
86
87[external_routes]
88# "status.example.com" = "127.0.0.1:9000"
89
90[network_groups]
91# "backend" = ["app.example.com", "api.example.com"]
92
93[attachments]
94# "app.example.com" = ["postgres:18"]

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 7

Tags 106

↑↓ moveenter openesc close