github.com/wmuizelaar/kpt@v0.0.0-20221018115725-bd564717b2ed/package-examples/ghost/README.md (about) 1 ### Ghost Application 2 3 "Ghost is a powerful app for new-media creators to publish, share, and grow a business around their content. It comes with modern tools to build a website, publish content, send newsletters & offer paid subscriptions to members." 4 https://ghost.org/ 5 6 ### Quick start 7 8 #### Get KPT Pacakge 9 ```bash 10 export NAMESPACE=<YOUR NAMESPACE> 11 # make sure the namespace is correct and exists. Otherwise, create the namespace 12 kubectl create namespace ${NAMESPACE} 13 14 # You get this Ghost package by running 15 kpt pkg get https://github.com/GoogleContainerTools/kpt.git/package-examples/ghost@main ${NAMESPACE} --for-deployment 16 ``` 17 18 #### Update the KRM resources to your own data 19 20 Updating the KRM resources are easy with variant constructor 21 ```bash 22 kpt fn render ${NAMESPACE} 23 ``` 24 25 #### Deploy the KRM resources to your cluster 26 27 ```bash 28 # Initialize inventory info. You only need to run this if do not have resourcesgroup.yaml 29 kpt live init ${NAMESPACE} 30 31 kpt live apply ${NAMESPACE} 32 ``` 33 34 You need to manually update the Ghost Host IP after deployment. 35 ```bash 36 # Get external IP from Service 37 kubectl get -n ${NAMESPACE} service/ghost-app -ojsonpath='{.status.loadBalancer.ingress[].ip}' 38 ``` 39 Use this IP to replace the "EXTERNAL_IP_FROM_SERVICE" value in `ghost/deployment-ghost.yaml` 40 41 Re-apply the new deployment. 42 ```bash 43 kpt live apply 44 ```