Wiki-Go on Ubuntu 24.04 LTS
by cloudimg
Wiki-Go keeps every wiki page as a plain Markdown file, with no database to operate.
Wiki-Go is an open source wiki platform written in Go that stores content as ordinary Markdown files rather than rows in a database. That one decision removes most of the operational work a wiki usually brings with it: there is no database engine to install, tune, replicate or migrate, no connection string to manage, and no dump and restore cycle. Your entire knowledge base is a folder tree of .md files you can read, grep, copy to another machine or commit to git, which also means a backup is a plain file copy and your content is never locked inside a schema you do not control.
It is still a complete wiki rather than a toy. Pages are organised hierarchically with breadcrumb navigation and a sidebar tree, every edit is versioned so any revision can be restored, and the editor renders tables, syntax highlighted code, Mermaid diagrams, LaTeX mathematics, emoji shortcodes, task lists and file attachments. Full text search spans the whole wiki with quoted phrase matching and term exclusion, and highlights matches in context. There are threaded comments with moderation, interactive kanban boards for tracking work, a light and dark theme, printer friendly output and a REST API. Administrator, editor and viewer roles combine with path based access rules and user groups, so a wiki can be fully public, entirely private, or open with individual sections restricted to named groups.
This cloudimg image runs Wiki-Go 1.8.12 from the official release binary, with its checksum verified at build time, on a fully patched Ubuntu 24.04 LTS base. The whole product is one systemd service serving port 80 directly, with no reverse proxy and no database in the path; it runs as an unprivileged system user and binds the privileged port through a single targeted Linux capability rather than by running as root, under NoNewPrivileges, ProtectSystem and ProtectHome.
Nothing usable ships baked into the image. Upstream Wiki-Go writes its configuration on first run and seeds a published default administrator account into it, so this image contains no configuration file at all. On the first boot of every virtual machine a bootstrap service generates a unique administrator password, hashes it with bcrypt at the project's own cost factor, writes the configuration around it and only then starts the wiki, and the wiki service is held back by a bootstrap guard until that has happened. No two deployments share a credential and an instance cannot come up on the default login. Session cookies are also preconfigured so that signing in works over plain HTTP immediately, a step that is easy to miss and otherwise makes login silently impossible in a browser, and the paired deployment guide covers moving to your own TLS certificate.
Wiki-Go is distributed under the GNU General Public License v3.0, free and open source with no per CPU or per deployment fee. cloudimg is not affiliated with or endorsed by LeoMoon Studios or the Wiki-Go project; Wiki-Go is a mark of its owner. cloudimg provides packaging, the secure by default configuration, per instance credential automation, security patching, and 24/7 support with a guaranteed 24 hour response SLA. Deployment guide: https://www.cloudimg.co.uk/guides/wiki-go-on-ubuntu-24-04-azure/