Skip to content

wordpress-nix

A fast FrankenPHP WordPress stack built with Nix, deployable as OCI containers or a NixOS module, with MySQL, Cloudflare D1, or Turso databases.

NixOSActiveMIT
View on GitHub (opens in a new tab)
Platform

NixOS

License
MIT
Status
Active
Part of

The Nix platform

Most WordPress hosting is a pile of hand-tuned servers. wordpress-nix replaces that with a single, shared Nix codebase that builds an optimized PHP and FrankenPHP stack and deploys it either as containers or directly on NixOS. Sites can be managed through the WordPress admin as usual, or pinned to a git repository for fully source-controlled deploys. It's for agencies and site owners who want fast, reproducible WordPress hosting they control.

Features

  • Optimized runtime. PHP 8.2, 8.3, or 8.4 per site, served by FrankenPHP, with CPU-specific build flags. On NixOS, Caddy handles TLS certificates automatically.

  • Two site modes. "State" keeps WordPress core mutable for admins who manage plugins in the UI; "git" mounts a read-only document root from a flake input, with uploads kept writable.

  • Database choices. MariaDB or MySQL, local or external, or serverless SQLite through Cloudflare D1 or Turso.

  • Platform hardening. Built-in mu-plugins for edge cache signals, performance indexes, and user-enumeration protection, so sites don't need extra plugins.

  • Bootstrapping. nix run github:Avunu/wordpress-nix scaffolds a new site, adopts an existing install without moving anything, or reconciles a site that's already set up.

  • Containers built and pushed to a registry by CI.

Getting started

You need Nix with flakes. Run the bootstrapper in your site's directory, then follow the README to bring up the local stack:

cd ~/sites/example && nix run github:Avunu/wordpress-nix    # or pass a directory

Related projects

All open-source projects

Reproducible Nix infrastructure for Frappe and ERPNext, from the development shell to OCI containers and a multi-site NixOS module.

odoo-nix

Active

Reproducible Nix infrastructure for Odoo Community (OCB) and OCA projects, from scaffolding and development to containers and NixOS.

Web Kiosk

Stable

A USB-booting NixOS image that turns an x86 computer into a locked-down Firefox kiosk for a single web page.

Need help with it?

Need this implemented? We host WordPress on this platform as part of our Websites and managed infrastructure services.