Wordpress operator for Kubernetes
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Vladimir Smagin d1c7bb9726
9 months ago
build bootstrap 10 months ago
cmd/manager bootstrap 10 months ago
deploy bugfix: do not create statefulset if external db used 10 months ago
pkg bugfix: do not create statefulset if external db used 10 months ago
version bootstrap 10 months ago
.gitignore bootstrap 10 months ago
Dockerfile add Dockerfile 10 months ago
Makefile fix 9 months ago
README.md readme 10 months ago
VERSION add Makefile, image repo and readme 10 months ago
go.mod fix 9 months ago
go.sum fix 9 months ago
logo.png add logo 10 months ago
tools.go bootstrap 10 months ago


Wordpress operator for Kubernetes

Run multiple Wordpress instances in your Kubernetes cluster. Use internal or external database. Internal database means a single pod with MariaDB without any replication or clusterization, my Wordpress operator is NOT MySQL operator. If you need database high availability use MySQL operator to create cluster.

Build sources

Prebuilt images

You can find images here https://hub.docker.com/r/iam21h/wordpress-operator

Deploy operator

kubectl -f deploy/service_account.yaml
kubectl -f deploy/role.yaml
kubectl -f deploy/role_binding.yaml
kubectl -f deploy/operator.yaml

Your first Wordpress deployment

This resource can help you run your first instance:

apiVersion: blindage.org/v1alpha1
kind: Wordpress
  name: my-test-wordpress
  replicas: 3
  databaseVolumeSize: 3Gi
  wordpressVolumeSize: 2Gi

If you want use external database:

apiVersion: blindage.org/v1alpha1
kind: Wordpress
  name: another
    database: wordpress
    hostname: my-test-wordpress-database
    password: wordpress
    username: wordpress
  replicas: 1
  wordpressVolumeSize: 1Gi

Be sure you are backed up created content and database PV’s because operator will remove them after Wordpress resource was deleted.

Look to pkg/apis/blindage/v1alpha1/wordpress_types.go to find more parameters like affinity or annotations.

Copyright by Vladimir Smagin (21h) 2019
http://blindage.org email: 21h@blindage.org
Project page: https://git.blindage.org/21h/wordpress-operator