Skip to content
qwest.devChangelogGet Qwest

Configuration (.env)

Every setting in Qwest's .env file.

2 min read

Qwest’s settings are in the .env file in your qwest folder. After changing it, run docker compose up -d.

Most settings are in the app itself, in Instance admin: who can sign up, storage, backups and the license. .env only holds what must be set before Qwest starts.

Setting What it is
QWEST_VERSION The Qwest version to run, matching the image you loaded (docker images qwest lists them).
BETTER_AUTH_URL The address people open Qwest at, like https://qwest.yourstudio.com. Sign-in only works from this exact address.
BETTER_AUTH_SECRET Signs sign-in sessions. Changing it signs everyone out.
COLLAB_SECRET Secures live editing.
SECRETS_KEY Encrypts stored keys (AI keys, bucket keys). Never lose it: they can’t be read without it.
POSTGRES_PASSWORD The database’s password. Set once: changing it later locks Qwest out of its own database.

Make each secret with the command in Install, step 4.

Setting What it is
QWEST_PORT Where Qwest listens on the server. Default 8080. Use 127.0.0.1:8080 when Tailscale or a web server on the same machine sits in front, so the port stays closed to the outside. Use another number (8081) if 8080 is taken.
ALLOW_PRIVATE_AI_ENDPOINTS Set to true to let the assistant use a model on your own network, like Ollama or LM Studio.
DISCORD_APPLICATION_ID, DISCORD_PUBLIC_KEY, DISCORD_BOT_TOKEN Your Discord bot. All three, or none.
S3_BUCKET, S3_ACCESS_KEY_ID, S3_SECRET_ACCESS_KEY, S3_ENDPOINT, S3_REGION Fix uploads to one bucket from here, instead of choosing in Instance admin›Storage. Most people should use the admin page instead (see cloud storage).

Docker keeps Qwest’s data in two volumes, which survive restarts, updates and docker compose down:

Volume Holds
qwest-data Uploaded files, backups, rclone’s remotes
postgres-data The database