Updated: 28 September 2026 · Applies to: Wiki.js 2.5 with Docker

Ubuntu 18.04 is end of life. Wiki.js is a modern open-source wiki with a Markdown editor, search and Git sync. The current version is 2.5; it needs Node.js 20 or newer and works best with PostgreSQL. The easiest installation is with Docker.

Install Docker Engine (official repository)

Ubuntu 24.04 / Debian 12:

apt install ca-certificates curl
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
chmod a+r /etc/apt/keyrings/docker.asc
tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "$VERSION_CODENAME")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF
apt update
apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

On Debian, use https://download.docker.com/linux/debian in both the key URL and URIs.

AlmaLinux 9 / Rocky Linux 9:

dnf install dnf-plugins-core
dnf config-manager --add-repo https://download.docker.com/linux/rhel/docker-ce.repo
dnf install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
systemctl enable --now docker

Test with docker run hello-world. Compose is available as docker compose.

Run Wiki.js with PostgreSQL

Create /opt/wikijs/compose.yaml:

services:
  db:
    image: postgres:17
    environment:
      POSTGRES_DB: wiki
      POSTGRES_USER: wikijs
      POSTGRES_PASSWORD: Strong-Password
    volumes: [db-data:/var/lib/postgresql/data]
    restart: unless-stopped
  wiki:
    image: ghcr.io/requarks/wiki:2
    depends_on: [db]
    environment:
      DB_TYPE: postgres
      DB_HOST: db
      DB_PORT: 5432
      DB_USER: wikijs
      DB_PASS: Strong-Password
      DB_NAME: wiki
    ports: ["127.0.0.1:3000:3000"]
    restart: unless-stopped
volumes:
  db-data:
cd /opt/wikijs && docker compose up -d

Make it public with HTTPS

Put Nginx in front of port 3000 with a Let's Encrypt certificate (see "How to use Nginx as a reverse proxy with SSL?"), then open https://wiki.example.com and complete the setup: admin email, password and site URL.

Related services

KVM VPS hosting

NVMe SSD and full root access, with Free Basic Managed Support.

Unmanaged dedicated servers

full root access and free IPMI KVM, with Free Basic Managed Support.

Managed dedicated servers

our engineers look after the server for you, from $135 a month.

Was this answer helpful?

Still stuck? Open a ticket