Skip to content

Introduction ​

A production-ready Helm chart for deploying WordPress with NGINX on Kubernetes. Developed by IO ANALYTICA.

wordpress-nginx is a Helm chart and a container image. The chart deploys WordPress on Kubernetes; the image holds WordPress, NGINX and PHP-FPM, and its tag is the chart version, so a chart version always names one image.

Why this chart ​

A place to go from the Bitnami WordPress chart. The chart's values keep the names of the Bitnami chart's: database, ingress, persistence, probes, scheduling and most other settings are set through the same keys. What differs is listed in Coming from the Bitnami chart. The chart depends on no Bitnami chart or image.

Security and comfort for the people who run the site.

  • NGINX executes PHP only for WordPress's own entry points (PHP execution allowlist), and the chart can refuse further paths before any request reaches PHP (Denied paths).
  • An optional watcher reports unexpected files on the site's volume as Prometheus metrics (File-integrity monitoring).
  • A daily tracker proposes each new WordPress release as a chart release, and a daily scan checks the published image. Update policy describes both, including what the scan cannot see.
  • The wordpress-idx sidecar gives the site a full-text search over posts, pages and comments, with an API that an agent can use for research.

Features ​

  • NGINX as web server (instead of Apache) with PHP-FPM
  • Internal or external MariaDB database
  • Internal Dragonfly cache server (serves both Redis and Memcached protocols) or external cache
  • W3 Total Cache auto-configuration for object and database caching
  • Full-text search sidecar (wordpress-idx) with FlexSearch-based API
  • Prometheus metrics via NGINX exporter sidecar
  • Horizontal Pod Autoscaling with CPU/memory targets
  • Network Policies for pod-level firewall rules
  • Dual Ingress support (primary + secondary for wp-admin restrictions)
  • Resource presets (nano through 2xlarge) for quick sizing

What a release runs ​

PartImageRuns
WordPress, NGINX, PHP-FPMghcr.io/ioanalytica/wordpress-nginx, tagged with the chart versionalways
MariaDBthe mariadb image of the MariaDB projectby default; off with an external database
Dragonflythe Dragonfly project's imagewith memcached.enabled, see Cache
wordpress-idxghcr.io/ioanalytica/wordpress-idxwith idx.enabled, see Search index
NGINX Prometheus exporternginx/nginx-prometheus-exporterwith metrics.enabled, see Metrics
File-integrity watcherthe wordpress-nginx imagewith fim.enabled, see File-integrity monitoring

The image describes what the wordpress-nginx image contains.

Next steps ​

Distributed under the Apache-2.0 license. WordPress, NGINX, Bitnami and other names are trademarks of their owners; this project is not affiliated with or endorsed by them.