Wordpress operator for Kubernetes
Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.
Vladimir Smagin a3227d0e16 use vendoring, add jenkins pipeline pirms 1 mēnesi
build bootstrap pirms 5 mēnešiem
cmd/manager bootstrap pirms 5 mēnešiem
deploy use vendoring, add jenkins pipeline pirms 1 mēnesi
pkg use vendoring, add jenkins pipeline pirms 1 mēnesi
vendor use vendoring, add jenkins pipeline pirms 1 mēnesi
version use vendoring, add jenkins pipeline pirms 1 mēnesi
.gitignore bootstrap pirms 5 mēnešiem
Dockerfile use vendoring, add jenkins pipeline pirms 1 mēnesi
Jenkinsfile use vendoring, add jenkins pipeline pirms 1 mēnesi
README.md use vendoring, add jenkins pipeline pirms 1 mēnesi
VERSION use vendoring, add jenkins pipeline pirms 1 mēnesi
go.mod use vendoring, add jenkins pipeline pirms 1 mēnesi
go.sum use vendoring, add jenkins pipeline pirms 1 mēnesi
logo.png add logo pirms 5 mēnešiem
tools.go bootstrap pirms 5 mēnešiem

README.md

Wordpress operator for Kubernetes

Run multiple Wordpress instances in your Kubernetes 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

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 specific MySQL operator to create cluster.

Think scalability before first start, because you can’t mount ReadWriteOnce persistent volume to multiple pods (replicas > 1), so you need storage class with ReadWriteMany feature.

Changed: now PVCs not purging after custom resource deletion. To delete PVCs use special flags.

This sample resource can help you run your first instance with many pods:

apiVersion: blindage.org/v1alpha1
kind: Wordpress
metadata:
  name: my-test-wordpress
spec:
  replicas: 3
  databaseVolumeSize: 1Gi
  wordpressVolumeSize: 2Gi
  # set storage class with ReadWriteMany feature
  wordpressStorageClass: nfs
  # purge PVCs after use
  databaseVolumeCleanup: true
  wordpressVolumeCleanup: true

Or if you want to use external database and restore from backup:

apiVersion: blindage.org/v1alpha1
kind: Wordpress
metadata:
  name: another
spec:
  importBackup:
    databaseBackupFile: s3://mywpbackup/backup.sql.gz
	  wordpressBackupFile:
	  bucketRegion:
	  bucketAccessKeyID:
	  bucketSecretKey:
  database:
    database: wordpress
    hostname: my-test-wordpress-database
    password: wordpress
    username: wordpress
  replicas: 1
  wordpressVolumeSize: 1Gi

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