How to Install Docmost using Docker on Ubuntu 25.10

Docmost is an open-source, Docker-based documentation management platform designed for collaboration and team knowledge sharing.
It allows you to easily create, edit, and maintain documentation in a self-hosted environment with minimal setup effort.

Update and Upgrade System

Make sure your system is up-to-date before proceeding:

apt update -y
apt upgrade -y

Install Required Packages

Install essential dependencies for Docker:

apt-get update
apt-get install ca-certificates curl

Set Up Docker Repository Key and Repository

To install the latest version of Docker, first add the GPG key and Docker repository:

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

echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null

Update apt and Install Docker

Update the package index and install Docker along with its dependencies:

apt-get update
apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Output:

root@vps:~# apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  docker-ce-rootless-extras libltdl7 libslirp0 pigz slirp4netns

Verify Docker Installation

Run the hello-world container to confirm Docker installation:

docker run hello-world

Output:

root@vps:~# docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
c1ec31eb5944: Pull complete 
Digest: sha256:94323f3e5e09a8b9515d74337010375a456c909543e1ff1538f5116d38ab3989
Status: Downloaded newer image for hello-world:latest

Hello from Docker!

Prepare Docmost Configuration

Create a working directory and download the latest Docker Compose configuration for Docmost:

mkdir docmost
cd docmost
curl -O https://raw.githubusercontent.com/docmost/docmost/main/docker-compose.yml

Output:

root@server:~# mkdir docmost
cd docmost
curl -O https://raw.githubusercontent.com/docmost/docmost/main/docker-compose.yml
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   819  100   819    0     0   4408      0 --:--:-- --:--:-- --:--:--  4427

Generate Secret Key

Docmost requires a secret key. Generate one with:

openssl rand -hex 32

Output:

root@server:~/docmost# openssl rand -hex 32
1fbf3948466025f26fbc3c4b6ba8b36bafecbf73a46baae0eb4334f3cf09eaca
root@server:~/docmost#

Edit the docker-compose.yml file to add the secret key:

nano docker-compose.yml

Find and replace the APP_SECRET line:

APP_SECRET: "REPLACE_WITH_LONG_SECRET"

to

APP_SECRET: "9a142b8f73a7b912f56f8aebfb3a0f0f0e32c173fcd4b729deef81973b7298cd"

Save and exit the file.

Start Docmost Containers

Now start the Docmost containers using Docker Compose:

docker compose up -d

Output:

root@server:~/docmost# docker compose up -d
[+] Running 40/40
 ✔ docmost Pulled                                                        101.3s
 ✔ db Pulled                                                              24.6s
 ✔ redis Pulled                                                            8.5s
[+] Running 7/7
 ✔ Network docmost_default      Created                                    0.2s
 ✔ Volume docmost_redis_data    Created                                    0.0s
 ✔ Volume docmost_docmost       Created                                    0.0s
 ✔ Volume docmost_db_data       Created                                    0.0s
 ✔ Container docmost-redis-1    Started                                    1.2s
 ✔ Container docmost-db-1       Started                                    1.2s
 ✔ Container docmost-docmost-1  Started                                    1.3s

Configure Firewall for Docmost

Enable and configure the firewall to allow access on port 3000:

ufw enable
ufw allow 3000/tcp
ufw reload

Check status:

ufw status

Output:

root@server:~/docmost# ufw status
Status: active

To                         Action      From
--                         ------      ----
3000/tcp                   ALLOW       Anywhere
3000/tcp (v6)              ALLOW       Anywhere (v6)

Restart Docmost Containers

If needed, restart the containers:

docker compose up -d

Output:

root@vps:~/docmost# docker compose up -d
WARN[0000] /root/docmost/docker-compose.yml: `version` is obsolete 
[+] Running 3/0
 ✔ Container docmost-db-1       Running                                                                                                      0.0s 
 ✔ Container docmost-redis-1    Running                                                                                                      0.0s 
 ✔ Container docmost-docmost-1  Running                                                                                                      0.0s 
root@vps:~/docmost#

Verifying Docmost Installation

Open your browser and visit:

http://your-server-ip:3000

Replace your-server-ip with your actual IP address.

Set up your workspace by providing:

  • Workspace Name
  • Admin Name
  • Email
  • Login Password

image

Once done, click Setup Workspace.

Accessing the Dashboard

After setup, log in to the Docmost Dashboard.

image

image

You can now:

  • Create new pages and documents
  • Manage workspace members
  • Configure general settings

That’s it!
You have successfully installed and configured Docmost on Ubuntu 25.10 using Docker.


CrownCloud - Get a SSD powered KVM VPS at $4.5/month!
Use the code WELCOME for 10% off!

1 GB RAM / 25 GB SSD / 1 CPU Core / 1 TB Bandwidth per month

Available Locations: LAX | MIA | ATL | FRA | AMS