---
aside: false
---

# Configuration Cheat Sheet

| YAML Config Key          | Environment Variable                | Default value         | Description                                                                                                                                                                                                                              |
|--------------------------|-------------------------------------|-----------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| log-level                | OG_LOG_LEVEL                        | `warn`                | Set the log level to one of the following: `debug`, `info`, `warn`, `error`, `fatal`.                                                                                                                                                    |
| log-output               | OG_LOG_OUTPUT                       | `stdout,file`         | Set the log output to one or more of the following: `stdout`, `file`.                                                                                                                                                                    |
| external-url             | OG_EXTERNAL_URL                     | none                  | Public URL to access to Opengist.                                                                                                                                                                                                        |
| opengist-home            | OG_OPENGIST_HOME                    | home directory        | Path to the directory where Opengist stores its data.                                                                                                                                                                                    |
| secret-key               | OG_SECRET_KEY                       | randomized 32 bytes   | Secret key used for session store & encrypt MFA data on database.                                                                                                                                                                        |
| db-uri                   | OG_DB_URI                           | `opengist.db`         | URI of the database.                                                                                                                                                                                                                     |
| index                    | OG_INDEX                            | `bleve`               | Define the code indexer (either `bleve`, `meilisearch`, or empty for no index).                                                                                                                                                          |
| index.meili.host         | OG_MEILI_HOST                       | none                  | Set the host for the Meiliseach server.                                                                                                                                                                                                  |
| index.meili.api-key      | OG_MEILI_API_KEY                    | none                  | Set the API key for the Meiliseach server.                                                                                                                                                                                               |
| search.default           | OG_SEARCH_DEFAULT                   | `content`             | Set the default search fields. Can contain multiple fields (e.g., `content,username`). Fields: `content,user,title,description,filename,extension,language,topic`.                                                                       |
| git.default-branch       | OG_GIT_DEFAULT_BRANCH               | none                  | Default branch name used by Opengist when initializing Git repositories. If not set, uses the Git default branch name. More info [here](https://git-scm.com/book/en/v2/Getting-Started-First-Time-Git-Setup#_new_default_branch)         |
| sqlite.journal-mode      | OG_SQLITE_JOURNAL_MODE              | `WAL`                 | Set the journal mode for SQLite. More info [here](https://www.sqlite.org/pragma.html#pragma_journal_mode)                                                                                                                                |
| http.host                | OG_HTTP_HOST                        | `0.0.0.0`             | The host on which the HTTP server should bind. Use an IP address for network binding. Use a path for Unix socket binding (e.g. /run/opengist.sock)                                                                                       |
| http.port                | OG_HTTP_PORT                        | `6157`                | The port on which the HTTP server should listen.                                                                                                                                                                                         |
| http.git-enabled         | OG_HTTP_GIT_ENABLED                 | `true`                | Enable or disable git operations (clone, pull, push) via HTTP. (`true` or `false`)                                                                                                                                                       |
| api.enabled              | OG_API_ENABLED                      | `true`                | Enable or disable the REST API. (`true` or `false`)                                                                                                                                                                                      |
| disable-file-upload      | OG_DISABLE_FILE_UPLOAD              | `false`               | Disable file uploads when creating or editing gists. (`true` or `false`)                                                                                                                                                                 |
| unix-socket-permissions  | OG_UNIX_SOCKET_PERMISSIONS          | `0666`                | File permissions for Unix socket (octal format).                                                                                                                                                                                         |
| metrics.enabled          | OG_METRICS_ENABLED                  | `false`               | Enable or disable Prometheus metrics server (`true` or `false`)                                                                                                                                                                          |
| metrics.host             | OG_METRICS_HOST                     | `0.0.0.0`             | The host on which the metrics server should bind.                                                                                                                                                                                        |
| metrics.port             | OG_METRICS_PORT                     | `6158`                | The port on which the metrics server should listen.                                                                                                                                                                                      |
| ssh.git-enabled          | OG_SSH_GIT_ENABLED                  | `builtin`             | Which SSH server serves git over SSH: `builtin` (Opengist's embedded server), `host` (delegate to the host's OpenSSH), or `disabled` (no SSH git access). Legacy booleans are accepted: `true` maps to `builtin`, `false` to `disabled`. |
| ssh.authorized-keys-file | OG_SSH_AUTHORIZED_KEYS_FILE         | none                  | When `ssh.git-enabled` is `host`, path to an `authorized_keys` file Opengist keeps in sync with users' keys (e.g. `/home/gist/.ssh/authorized_keys`). Leave empty to use OpenSSH's `AuthorizedKeysCommand` instead.                      |
| ssh.host                 | OG_SSH_HOST                         | `0.0.0.0`             | The host on which the SSH server should bind. (`builtin` only)                                                                                                                                                                           |
| ssh.port                 | OG_SSH_PORT                         | `2222`                | For the `builtin` server, the port it listens on. For `host` mode, the port shown in SSH clone URLs (set it to your OpenSSH port, usually `22`).                                                                                         |
| ssh.external-domain      | OG_SSH_EXTERNAL_DOMAIN              | none                  | Public domain for the Git SSH connection, if it has to be different from the HTTP one. If not set, uses the URL from the request.                                                                                                        |
| ssh.username             | OG_SSH_USERNAME                     | none                  | Username shown in SSH clone URLs (e.g. `gist` → `gist@host:user/repo.git`). For `host` mode set it to the OS account clients log in as. If empty, URLs carry no username.                                                                |
| github.client-key        | OG_GITHUB_CLIENT_KEY                | none                  | The client key for the GitHub OAuth application.                                                                                                                                                                                         |
| github.secret            | OG_GITHUB_SECRET                    | none                  | The secret for the GitHub OAuth application.                                                                                                                                                                                             |
| gitlab.client-key        | OG_GITLAB_CLIENT_KEY                | none                  | The client key for the GitLab OAuth application.                                                                                                                                                                                         |
| gitlab.secret            | OG_GITLAB_SECRET                    | none                  | The secret for the GitLab OAuth application.                                                                                                                                                                                             |
| gitlab.url               | OG_GITLAB_URL                       | `https://gitlab.com/` | The URL of the GitLab instance.                                                                                                                                                                                                          |
| gitlab.name              | OG_GITLAB_NAME                      | `GitLab`              | The name of the GitLab instance. It is displayed in the OAuth login button.                                                                                                                                                              |
| gitea.client-key         | OG_GITEA_CLIENT_KEY                 | none                  | The client key for the Gitea OAuth application.                                                                                                                                                                                          |
| gitea.secret             | OG_GITEA_SECRET                     | none                  | The secret for the Gitea OAuth application.                                                                                                                                                                                              |
| gitea.url                | OG_GITEA_URL                        | `https://gitea.com/`  | The URL of the Gitea instance.                                                                                                                                                                                                           |
| gitea.name               | OG_GITEA_NAME                       | `Gitea`               | The name of the Gitea instance. It is displayed in the OAuth login button.                                                                                                                                                               |
| oidc.provider-name       | OG_OIDC_PROVIDER_NAME               | none                  | The name of the OIDC provider                                                                                                                                                                                                            |
| oidc.client-key          | OG_OIDC_CLIENT_KEY                  | none                  | The client key for the OpenID application.                                                                                                                                                                                               |
| oidc.secret              | OG_OIDC_SECRET                      | none                  | The secret for the OpenID application.                                                                                                                                                                                                   |
| oidc.discovery-url       | OG_OIDC_DISCOVERY_URL               | none                  | Discovery endpoint of the OpenID provider.                                                                                                                                                                                               |
| oidc.group-claim-name    | OG_OIDC_GROUP_CLAIM_NAME            | none                  | Name of the claim containing the groups.                                                                                                                                                                                                 |
| oidc.admin-group         | OG_OIDC_ADMIN_GROUP                 | none                  | Name of the group that should receive admin rights.                                                                                                                                                                                      |
| ldap.url                 | OG_LDAP_URL                         | none                  | URL of the LDAP instance; if not set, LDAP authentication is disabled                                                                                                                                                                    |
| ldap.bind-dn             | OG_LDAP_BIND_DN                     | none                  | Bind DN to authenticate against the LDAP. e.g: cn=read-only-admin,dc=example,dc=com                                                                                                                                                      |
| ldap.bind-credentials    | OG_LDAP_BIND_CREDENTIALS            | none                  | The password for the Bind DN.                                                                                                                                                                                                            |
| ldap.search-base         | OG_LDAP_SEARCH_BASE                 | none                  | The Base DN to start search from. e.g: ou=People,dc=example,dc=com                                                                                                                                                                       |
| ldap.search-filter       | OG_LDAP_SEARCH_FILTER               | none                  | The filter to search against (the format string %s will be replaced with the username). e.g: (uid=%s)                                                                                                                                    |
| custom.name              | OG_CUSTOM_NAME                      | none                  | The name of your instance, to be displayed in the tab title                                                                                                                                                                              |
| custom.logo              | OG_CUSTOM_LOGO                      | none                  | Path to an image, relative to $opengist-home/custom.                                                                                                                                                                                     |
| custom.favicon           | OG_CUSTOM_FAVICON                   | none                  | Path to an image, relative to $opengist-home/custom.                                                                                                                                                                                     |
| custom.static-links      | OG_CUSTOM_STATIC_LINK_#_(PATH,NAME) | none                  | Path and name to custom links, more info [here](custom-links.md).                                                                                                                                                                        |
