Docs and wikis, checked 2026-09-07
Outline: Docker configuration reference
Self-hosted team knowledge base and wiki with realtime collaborative editing.
At a glance
- Image:
docker.io/outlinewiki/outline - Tags:
latest,1.10.0,1.10,nightly - Licence: BUSL-1.1
- Source: https://github.com/outline/outline
- Docs: https://docs.getoutline.com/s/hosting
Ports
| Port | What listens | Source |
|---|---|---|
3000 | Default HTTP port for the web app, API and websocket service, set by PORT and matched to the compose file. | source for port 3000 |
Environment variables
| Variable | Required | What it does | Example | Source |
|---|---|---|---|---|
URL | Yes | Fully qualified, publicly accessible URL Outline is served on. When behind a proxy, this is the proxy's own URL, not the container's. | https://docs.example.com | source for URL |
SECRET_KEY | Yes | Hex-encoded 32-byte key used to sign sessions and secrets. Must be generated per installation. | openssl rand -hex 32 | source for SECRET_KEY |
DATABASE_URL | Yes | Connection string for the production Postgres database, including credentials and database name. | postgres://user:pass@postgres:5432/outline | source for DATABASE_URL |
FILE_STORAGE | No | Chooses where attachments and images are kept: local disk or an S3-compatible object store. | local | source for FILE_STORAGE |
PROXY_HEADERS_TRUSTED | No | Whether to trust X-Forwarded-For and X-Forwarded-Proto from an upstream proxy. Set false only when not behind one in production. | true | source for PROXY_HEADERS_TRUSTED |
Volumes that must persist
| Path | What is in it | Source |
|---|---|---|
/var/lib/outline/data | Default local attachment and image storage when FILE_STORAGE is set to local rather than s3. | source for /var/lib/outline/data |
Behind a reverse proxy
- Set URL to the proxy's own public address, not the container's internal one, or generated links and redirects break. source for this reverse-proxy note
- The websocket service runs in the same container as the web app by default; only set COLLABORATION_URL to a wss:// address if it is split onto its own domain. source for this reverse-proxy note
- Set PROXY_HEADERS_TRUSTED and PROXY_IP_HEADER to match your proxy, or client IPs and the forwarded protocol are read wrong. source for this reverse-proxy note
- FORCE_HTTPS defaults to true and redirects to https; set it false only when TLS is already terminated at the proxy or load balancer. source for this reverse-proxy note
What it needs alongside it
| Dependency | Why | Source |
|---|---|---|
| PostgreSQL | Primary database, addressed through DATABASE_URL. Outline does not run without it. | source for PostgreSQL |
| Redis | Backs the job queues and, if REDIS_COLLABORATION_URL is set, horizontal scaling of the collaboration service. | source for Redis |
Release timeline
| Version | Date | Breaking | What changed | Source |
|---|---|---|---|---|
v1.10.0 | 2026-09-02 | No | Focus on performance and memory use. Adds side-by-side split view and inline comments for read-only users. | source for release v1.10.0 |
v1.9.2 | 2026-07-21 | No | Adds a query parameter to the templates.list API endpoint and allows deleting failed or expired exports. | source for release v1.9.2 |
v1.9.1 | 2026-07-13 | No | Adds a Slab importer, rgb and hsl colour swatches, and a sidebarHidden query option. | source for release v1.9.1 |
v1.9.0 | 2026-07-09 | No | Removes the ability to collapse arbitrary headings, replaced by toggle sections and toggle headings for multiplayer editing. | source for release v1.9.0 |
v1.8.1 | 2026-06-06 | No | Adds drag-and-drop from document lists, an admin interface to change user avatars, and outgoing email metrics tagging. | source for release v1.8.1 |
If it is not coming up
- WebSocket connection to 'wss://<your-domain>:6001/app/...' failed (UI shows "WARNING: Cannot connect to real-time service")
- ECONNREFUSED / ENOTFOUND / connection to server at "postgres" port 5432 failed
Read from the upstream documentation, repository and container registry by Keita Emsden on 2026-09-07. Every row links the page it came from. Upstream changes without telling anyone, so check the source link before you rely on a value.