| 1 | # Config for the local Docker instance started by deploy/dev.sh. |
| 2 | # |
| 3 | # Committed on purpose (unlike deploy/anvil.toml, which is gitignored because it |
| 4 | # holds production's deploy secret): nothing here is sensitive, and a working |
| 5 | # local instance should be one command away. |
| 6 | |
| 7 | data_dir = "/data" |
| 8 | |
| 9 | [http] |
| 10 | # Inside the container; deploy/dev.sh publishes it to 127.0.0.1 on the host. |
| 11 | listen = "0.0.0.0:3000" |
| 12 | # What the browser sees. dev.sh also passes ANVIL_BASE_URL, which wins — so a |
| 13 | # differently named instance (ANVIL_DEV_NAME=anvil2) still gets correct links. |
| 14 | base_url = "https://anvil.localhost" |
| 15 | |
| 16 | # Single sign-on against the local instance of login.richardscollin.com |
| 17 | # (../login-richardscollin, `portless` → https://login.localhost). The dev |
| 18 | # client there is registered as *public* — PKCE only, no secret — so this needs |
| 19 | # no credential in the file and none in the environment. See docs/oidc.md. |
| 20 | # With that provider not running, the sign-in button is there but the provider |
| 21 | # is not, so use a password. |
| 22 | [oidc] |
| 23 | issuer = "https://login.localhost" |
| 24 | client_id = "anvil" |
| 25 | |
| 26 | [ssh] |
| 27 | enabled = true |
| 28 | listen = "0.0.0.0:2222" |
| 29 | # The published host port, i.e. dev.sh's $SSH_PORT (default: web port + 1). |
| 30 | # portless proxies HTTP only, so SSH clone URLs point straight at localhost. |
| 31 | clone_host = "localhost" |
| 32 | clone_port = 20641 |
| 33 | clone_user = "git" |
| 34 | |
| 35 | [ci] |
| 36 | # The job container is a sibling on the host's Docker daemon, as in production. |
| 37 | memory_mb = 2048 |
| 38 | cpus = 2.0 |
| 39 | timeout_secs = 600 |
| 40 | |
| 41 | [periodic] |
| 42 | # Local instances are small; scanning every 10 minutes keeps language stats and |
| 43 | # preview images fresh while you poke at things. |
| 44 | language_detection_interval_secs = 600 |
| 45 | preview_image_interval_secs = 600 |
| 46 | disk_usage_interval_secs = 600 |