Configuration Reference

GitBlixt is configured entirely through environment variables. Pass them to docker run with -e VAR=value or put them in a .env file and use --env-file.

Required

Variable Description
GITBLIXT_HOST Your domain, e.g. git.example.com. Used for SSL certificate requests, email links, and SSH clone URLs.
GITBLIXT_SECRET_KEY_BASE 64+ character random secret. Used to sign cookies and tokens. Generate with openssl rand -hex 64. Never share this value.

Database

Variable Default Description
DATABASE_URL bundled Postgres External Postgres connection string. If set, bundled Postgres is disabled.
DATABASE_POOL_SIZE 10 Database connection pool size. Increase for high-traffic instances.

SSL

Variable Default Description
SSL_MODE auto auto — Let's Encrypt. manual — load cert from files. off — HTTP only.

See SSL & HTTPS for full details.

SSH

Variable Default Description
GITBLIXT_SSH_PORT 22 Port for git-over-SSH. Change if port 22 is taken by the host OS.

Storage

Variable Default Description
GITBLIXT_REPO_PATH /data/repos Where bare git repositories are stored.
GITBLIXT_UPLOAD_PATH /data/uploads Where user uploads (avatars, attachments) are stored.

Email

Variable Default Description
SMTP_HOST SMTP server hostname. Email is disabled if not set.
SMTP_PORT 587 SMTP port.
SMTP_USERNAME SMTP username.
SMTP_PASSWORD SMTP password.
GITBLIXT_FROM_EMAIL noreply@{host} From address for outbound email.

See Email Configuration for details.

Application Behavior

Variable Default Description
GITBLIXT_REGISTRATION_ENABLED true Set to false to prevent new user registrations.
GITBLIXT_ADMIN_EMAIL If set on first boot, creates an admin account with this email.
GITBLIXT_ADMIN_PASSWORD Password for the first-boot admin account.

OAuth Providers (for Repository Import)

Variable Description
GITHUB_CLIENT_ID GitHub OAuth App client ID
GITHUB_CLIENT_SECRET GitHub OAuth App client secret
GITLAB_CLIENT_ID GitLab.com OAuth Application ID
GITLAB_CLIENT_SECRET GitLab.com OAuth Application secret
GITLAB_SH_CLIENT_ID Self-hosted GitLab OAuth Application ID
GITLAB_SH_CLIENT_SECRET Self-hosted GitLab OAuth Application secret

See Importing Repositories for setup instructions.