The Ghost Operator is an implementation of a Kubernetes Operator using Operator SDK for Ghost headless CMS for professional publishing.
This project is currently work-in-progress and in Alpha, so it may not be production ready.
We assume you already have a running cluster
To install the operator, run:
kubectl create -f https://raw.githubusercontent.com/fossildev/ghost-operator/master/deploy/crds/ghost.fossil.or.id_ghostapps_crd.yaml
kubectl create -f https://raw.githubusercontent.com/fossildev/ghost-operator/master/deploy/service_account.yaml
kubectl create -f https://raw.githubusercontent.com/fossildev/ghost-operator/master/deploy/role.yaml
kubectl create -f https://raw.githubusercontent.com/fossildev/ghost-operator/master/deploy/role_binding.yaml
kubectl create -f https://raw.githubusercontent.com/fossildev/ghost-operator/master/deploy/operator.yamlOnce the ghost-operator deployment is ready, create a GhostApp instance, like:
kubectl apply -f - <<EOFapiVersion: ghost.fossil.or.id/v1alpha1kind: GhostAppmetadata: name: example-ghostappspec: replicas: 1 image: ghost:3 config: url: http://ghost.example.com database: client: sqlite3 connection: filename: /var/lib/ghost/content/data/ghost.db persistent: enabled: true size: 10Gi ingress: enabled: true hosts: - "ghost.example.com" - "www.ghost.example.com"EOFIn this example, the Ghost App is available at http://ghost.example.com and Ghost Admin at http://ghost.example.com/ghost/
We hope you'll get involved! Read our Contributors' Guide for details.
This project is licensed under the Apache-2.0 License - see the LICENSE for details