Wiki.js
Modern, extensible wiki engine for building and managing collaborative documentation
Alternative to: notion, confluence, gitbook, mediawiki
Wiki.js is a modern, lightweight, and powerful wiki application built on Node.js. Teams write and organize content in Markdown through a visual editor, manage structure and permissions from an extensive admin area, and authenticate with third-party providers like Google, GitHub, or Slack. Content is version-controlled and can sync with Git, making it a flexible, self-hosted alternative to hosted knowledge-base tools.
Wiki.js Docker Compose example
Self-host Wiki.js on your own server, homelab, or VPS starting from this Docker Compose example.
It runs Wiki.js in Docker containers using the official postgres:15-alpine, requarks/wiki:2 images, with persistent volumes and automatic restarts preconfigured.
Review the environment variables and adjust them to your setup, save the file as compose.yml (or docker-compose.yml), and start the stack with docker compose up -d.
services:
db:
image: postgres:15-alpine
restart: unless-stopped
environment:
POSTGRES_DB: "wiki"
POSTGRES_USER: "wikijs"
# Password for the PostgreSQL database user
POSTGRES_PASSWORD: "wikijsrocks"
volumes:
- db_data:/var/lib/postgresql/data
wiki:
image: requarks/wiki:2
depends_on:
- db
restart: unless-stopped
environment:
# Database driver used by Wiki.js
DB_TYPE: "postgres"
# Hostname of the database service
DB_HOST: "db"
# Port the database listens on
DB_PORT: "5432"
# Database user Wiki.js connects as
DB_USER: "wikijs"
# Password for the PostgreSQL database user
DB_PASS: "wikijsrocks"
# Name of the database Wiki.js uses
DB_NAME: "wiki"
volumes:
db_data: Prefer a managed setup? WinterFlow installs, configures, and updates Wiki.js for you using this same Docker Compose configuration.