DokuWiki on Ubuntu 24.04 on Azure User Guide
Overview
DokuWiki is a simple to use and highly versatile open source wiki that needs no database. Every page is a plain text file on disk, so backups are trivial, version history is built in, and there is no database server to run, tune or back up separately. It is a popular choice for documentation, knowledge bases, team wikis, runbooks and manuals. The cloudimg image installs the current stable DokuWiki release served by nginx and PHP 8.3 FPM on a hardened, fully patched Ubuntu 24.04 LTS base. DokuWiki runs behind an nginx reverse proxy on port 80, keeps all wiki content (pages, media, metadata and the search index) on a dedicated Azure data disk, and generates a unique administrator password on the first boot of every VM. Backed by 24/7 cloudimg support.
What is included:
- DokuWiki (stable release) served by nginx and PHP 8.3 FPM, managed by systemd
- The DokuWiki web interface on
:80with Access Control Lists enabled - A per VM
adminaccount generated on first boot and recorded in a root only file - A dedicated Azure data disk at
/var/lib/dokuwikifor pages, media, metadata and the search index nginx.serviceandphp8.3-fpm.serviceas systemd units, enabled and active- An unauthenticated
/healthzendpoint for Azure Load Balancer health probes - 24/7 cloudimg support
Prerequisites
An active Azure subscription, an SSH key pair, and a VNet plus subnet in the target region. Standard_B2s (2 vCPU / 4 GiB RAM) is a sensible starting point; size up for busier wikis or large media libraries. NSG inbound: allow 22/tcp from your management network and 80/tcp for the wiki. DokuWiki serves plain HTTP on port 80; for production, terminate TLS in front of it with your own domain.
Step 1 - Deploy from the Azure Marketplace
Sign in to the Azure Portal, choose Create a resource, search the Marketplace for DokuWiki by cloudimg, and select Create. On Basics pick your subscription, resource group, region and size; under Administrator account choose SSH public key and paste your key; under Inbound port rules allow SSH (22) and HTTP (80). Review the dedicated data disk on the Disks tab, then Review + create then Create.
Step 2 - Deploy from the Azure CLI
az vm create \
--resource-group <your-rg> \
--name dokuwiki \
--image <marketplace-image-urn> \
--size Standard_B2s \
--admin-username azureuser \
--ssh-key-values ~/.ssh/id_ed25519.pub \
--vnet-name <your-vnet> --subnet <your-subnet> \
--public-ip-sku Standard
az vm open-port --resource-group <your-rg> --name dokuwiki --port 80 --priority 1010
Step 3 - Connect to your VM
ssh azureuser@<vm-public-ip>
Step 4 - Confirm the services are running
DokuWiki is served by nginx on port 80, which forwards PHP requests to PHP 8.3 FPM over a local socket. Confirm both services are active and nginx is listening on port 80:
systemctl is-active nginx php8.3-fpm dokuwiki-firstboot
ss -tlnp | grep ':80 '

Step 5 - Retrieve your admin password
On the first boot of every VM the dokuwiki-firstboot.service generates a unique administrator password, seeds the DokuWiki admin account with it, and writes the details to a root only file. Read it with:
sudo cat /root/dokuwiki-credentials.txt

Step 6 - Confirm the stack and health endpoint
nginx serves an unauthenticated /healthz endpoint for load balancer probes. Confirm the DokuWiki release, the PHP version and that the wiki responds:
cat /var/www/dokuwiki/VERSION
php -v | head -1
curl -sI http://127.0.0.1/healthz | head -1
curl -s http://127.0.0.1/doku.php?id=start | grep -o '<title>[^<]*</title>'

Step 7 - Open the wiki in your browser
Browse to http://<vm-public-ip>/. The wiki start page is served to anonymous visitors (read access is granted to everyone by default). This is the welcome page shipped with the image.

Step 8 - Sign in as admin
Click Log In in the top right, then enter admin and the password from Step 5.

Once signed in, the user tools show Logged in as: Administrator (admin) along with the Admin and Log Out links, and every section gains an Edit button.

Step 9 - Create and edit pages
DokuWiki pages are created simply by visiting a page name that does not exist yet and clicking Create this page, or by editing an existing page. Pages are written in DokuWiki's simple wiki markup. Organise related pages into namespaces by separating names with a colon, for example projects:alpha. The editor provides a formatting toolbar and a live preview.

Step 10 - Manage users and Access Control Lists
Open the Admin menu to reach the administration panel. From here you can manage users in the User Manager, control who can read and edit which namespaces in Access Control List Management, adjust wiki behaviour in Configuration Settings, and install plugins from the Extension Manager. The default policy shipped with this image grants read access to everyone and edit access to logged in users; tighten or relax it to suit your organisation.

Step 11 - Confirm wiki content lives on the dedicated disk
All wiki content lives under /var/lib/dokuwiki, which is a dedicated Azure data disk captured into the image and re provisioned on every VM. Because DokuWiki is database free, everything (pages, media, metadata, the search index and version history) is plain files under this mount:
df -h /var/lib/dokuwiki | tail -1
ls /var/lib/dokuwiki
findmnt -no SOURCE,TARGET,FSTYPE /var/lib/dokuwiki

Maintenance
- Back up your wiki: because DokuWiki needs no database, a backup is simply a copy of
/var/lib/dokuwiki(all pages, media, metadata and history) plus/var/www/dokuwiki/conf(users and ACLs). Snapshot the data disk ortarthe directory. - Add users: sign in as admin and use Admin then User Manager. Self registration is disabled by default on this appliance.
- Namespaces and ACLs: use Admin then Access Control List Management to scope read and write access per namespace.
- Plugins and templates: install extensions from Admin then Extension Manager.
- Security updates: unattended security upgrades are enabled, so the OS keeps itself patched. Reboot when a new kernel is installed.
- TLS: for production, front DokuWiki with your own domain and a TLS terminating reverse proxy or Azure Application Gateway.
Support
cloudimg provides 24/7/365 expert technical support for this image. Contact support@cloudimg.co.uk. DokuWiki is licensed under GPL 2.0. This image is provided by cloudimg; additional charges apply for build, maintenance and 24/7 support.