Skip to content

For Outline

The Notion-quality wiki, on your own VM

Outline, Postgres and Redis on one Edge VM, with attachments in S3-compatible storage and the app shell cached across 988 locations. Ten people or five hundred, the bill doesn't move.

Free to sign up. No egress fees on any product.

Why Outline on Edge

A wiki your team will use, on a bill that doesn't grow with it

Outline's editor is as good as the hosted tools. Self-hosting it on Edge keeps the knowledge base on your infrastructure and takes seats off the invoice.
  • Notion-quality, self-hosted

    Real-time editing, slash commands, nested collections and Markdown shortcuts. Your knowledge base simply lives on your VM.
  • Attachments in object storage

    Set FILE_STORAGE=s3 and point Outline at Edge Storage. Images, files and exports land in a bucket, not on the VM disk.
  • SSO without the SSO tax

    Google Workspace, Microsoft Entra, Slack or any OIDC provider such as Keycloak or Authelia. Configured in .env, no enterprise tier.
  • Search that stays in-house

    Full-text search runs on the Postgres next to the app. Queries never leave your infrastructure.
  • CDN in front, WebSockets through

    The static app shell caches in 988 locations. Signed-in requests and the collaboration socket pass straight to your VM.
  • Flat bill, any team size

    Notion and Outline Cloud both charge per seat. On Edge it's one VM and a bucket, whether 10 or 500 people use it.

Reference architecture

How Outline maps to Edge

One Docker host runs Outline, Postgres and Redis. Attachments go to a bucket and the CDN handles TLS for everything. Most teams never need a second VM.
  • Compute

    Runs Outline, Postgres and Redis with Docker Compose on one VM.

  • Storage

    Holds attachments and exports via FILE_STORAGE=s3, plus nightly pg_dump backups.

  • CDN

    Terminates TLS, caches the static app shell and passes the collaboration WebSocket through.

  • DNS

    Anycast DNS for wiki.acme.com.

  • Shield

    Scores traffic to public share links and sign-in, so scrapers can be turned away before the VM.

  • Assist

    Answers questions from the collections you publish, with one script tag.

Deploy

From empty VM to team wiki in five steps

Plain Docker Compose and the S3 settings Outline already supports. No forks, no patches.
  1. 01

    Create a Docker VM and a bucket

    The docker library script installs Docker CE and Compose on first boot. Standard (2 vCPU, 4 GiB) is plenty for most teams.

    shell
    $ edge compute create --name wiki --size s-2vcpu-4gb \
        --image ubuntu-24 --region london --script docker
    $ edge storage create outline-uploads
  2. 02

    Write the compose file

    Outline listens on localhost. Put Nginx or Caddy on :443 in front of it as the CDN origin.

    docker-compose.yml
    services:
      outline:
        image: docker.getoutline.com/outlinewiki/outline:latest
        env_file: .env
        ports: ["127.0.0.1:3000:3000"]
        depends_on: [postgres, redis]
        restart: always
      postgres:
        image: postgres:16
        environment:
          POSTGRES_USER: outline
          POSTGRES_PASSWORD: ${PG_PASSWORD}
          POSTGRES_DB: outline
        volumes: ["pg-data:/var/lib/postgresql/data"]
      redis:
        image: redis:7
    volumes:
      pg-data:
  3. 03

    Point uploads at Edge Storage

    Outline speaks S3, so Edge Storage is a drop-in. Add your identity provider in the same file; Outline has no password login.

    .env
    URL=https://wiki.acme.com
    SECRET_KEY=<openssl rand -hex 32>
    UTILS_SECRET=<openssl rand -hex 32>
    DATABASE_URL=postgres://outline:<password>@postgres:5432/outline
    REDIS_URL=redis://redis:6379
    PGSSLMODE=disable
    
    FILE_STORAGE=s3
    AWS_ACCESS_KEY_ID=<edge-access-key>
    AWS_SECRET_ACCESS_KEY=<edge-secret-key>
    AWS_REGION=us-east-1
    AWS_S3_UPLOAD_BUCKET_URL=https://storage.edge.network
    AWS_S3_UPLOAD_BUCKET_NAME=outline-uploads
    AWS_S3_FORCE_PATH_STYLE=true
    AWS_S3_ACL=private
    
    OIDC_CLIENT_ID=<client-id>
    OIDC_CLIENT_SECRET=<client-secret>
    OIDC_AUTH_URI=https://sso.acme.com/authorize
    OIDC_TOKEN_URI=https://sso.acme.com/token
    OIDC_USERINFO_URI=https://sso.acme.com/userinfo
  4. 04

    Start it and put the CDN in front

    SSL is issued in under a minute. The CDN passes the collaboration WebSocket through to the VM.

    shell
    $ docker compose up -d
    $ edge cdn create --name wiki
    $ edge cdn domains add cdn-a1b2c3 \
        --domain wiki.acme.com \
        --origin https://<vm-ip>
  5. 05

    Back up nightly

    Attachments already live in the bucket. This adds a daily database dump next to them.

    /etc/cron.daily/outline-backup
    #!/bin/sh
    set -e
    . /etc/edge.env   # exports EDGE_API_KEY for the Edge CLI
    cd /srv/outline
    docker compose exec -T postgres pg_dump -U outline outline \
      | gzip > /tmp/outline.sql.gz
    edge storage cp /tmp/outline.sql.gz \
      "outline-uploads/backups/$(date +%F).sql.gz"

Prefer to hand it off? Give the job to your AI agent or have our engineers do it.

What it costs

A wiki priced per VM, not per person

Per-seat tools get expensive as a company grows. Here the cost is a VM and a few gigabytes of storage, and adding people changes neither.
  • No per-seat pricing, at any team size
  • SSO included, with no enterprise tier
  • Billed hourly from a prepaid balance, with optional hard caps
  • Standard Docker and S3, so you can leave whenever you like
See compute pricing

Estimated monthly bill on Edge

50-person team · 25 GB of attachments and backups

USD
  • Compute$19.24Standard VM · 2 vCPU · 4 GiB · 80 GB NVMe
  • Storage$0.3025 GB at $0.015/GB, first 5 GB free
  • CDN$0.00~400k requests, inside the 500k free tier
  • DNS$0.00Zone and records for wiki.acme.com
  • Egress$0.00
Total$19.54

Indicative monthly cost · 50-person team wiki

  • Notion Business (50 seats)~$750/mo
  • Outline Cloud (50 seats)~$500/mo
  • Edge (Standard VM + Storage)~$20/mo

Competitor figures are indicative, based on public per-seat pricing. The Edge figure is the bill above, and it stays flat as the team grows.

FAQ

Outline on Edge, answered

Something else? Ask an engineer.
How does this compare to Outline Cloud or Notion?
Both charge per seat. Self-hosting on Edge is a flat monthly cost whatever the team size, with the same Outline software. The trade-off is one VM to keep updated.
How does sign-in work?
Outline has no password login. It signs people in through Google Workspace, Microsoft Entra, Slack or any OIDC provider, or by email magic link if you configure SMTP. All of it is set in the .env file.
Does real-time collaboration work through the CDN?
Yes. Outline uses Y.js over WebSockets and the Edge CDN passes WebSocket connections through to your VM. If you run more than one Outline container, point them all at the same Redis.
How do I back up the knowledge base?
Attachments already live in Edge Storage. Add a nightly pg_dump of the Postgres database to the same bucket, as in step five, and you have everything needed to rebuild.
Can I move from Notion?
Outline can import Notion workspaces as well as Markdown and HTML files. For a larger move, including Confluence, our Expert Services team can run the migration for you.

Stand up your team wiki

Start free, or have Expert Services move you off Notion, Confluence or Outline Cloud.

Free tiers hard-cap. Nothing bills until you add a card.