mirror of
https://github.com/plausible/hosting.git
synced 2024-09-30 03:08:58 -05:00
70 lines
2.3 KiB
Org Mode
70 lines
2.3 KiB
Org Mode
#+TITLE: Setup Plausible
|
|
|
|
* Prelimiary requirements
|
|
|
|
- Minikube
|
|
- Postgres-Operator
|
|
|
|
** Notes
|
|
- Minikube can be switched out for Kind
|
|
- Postgres manifests are also included, in case you don't want to deploy a highly available Postgres database locally (~DATABASE_URL~ will need to be updated also)
|
|
|
|
* Setup
|
|
|
|
#+NAME: create namespace
|
|
#+begin_src shell :results silent
|
|
kubectl create ns plausible
|
|
#+end_src
|
|
|
|
#+NAME: create the database secrets
|
|
#+begin_src shell :results silent
|
|
kubectl -n plausible create secret generic postgres-configuration \
|
|
--from-literal=POSTGRES_DB=plausible \
|
|
--from-literal=POSTGRES_USER=plausible \
|
|
--from-literal=POSTGRES_PASSWORD=plausible \
|
|
--from-literal=PGUSER=plausible \
|
|
--from-literal=PGPASSWORD=plausible \
|
|
--from-literal=PGDATABASE=plausible
|
|
#+end_src
|
|
|
|
#+NAME: install Postgres
|
|
#+begin_src shell :pwd ./ :results silent
|
|
kubectl -n plausible apply -f postgres.yaml
|
|
#+end_src
|
|
|
|
#+NAME: create secrets
|
|
#+begin_src shell :results silent
|
|
kubectl -n plausible create secret generic plausible \
|
|
--from-literal=ADMIN_USER_EMAIL=myemail@example.com \
|
|
--from-literal=ADMIN_USER_NAME="Example User" \
|
|
--from-literal=ADMIN_USER_PWD="password" \
|
|
--from-literal=SECRET_KEY_BASE="$(openssl rand -base64 64)" \
|
|
--from-literal=DATABASE_URL="postgres://plausible:plausible@postgres/plausible?ssl=false" \
|
|
--from-literal=CLICKHOUSE_DATABASE_URL=http://plausible-events-db:8123/plausible
|
|
#+end_src
|
|
|
|
#+NAME: apply the service
|
|
#+begin_src shell :results silent
|
|
kubectl -n plausible apply -f plausible-service.yaml
|
|
#+end_src
|
|
|
|
#+NAME: create configuration
|
|
#+begin_src shell :results silent
|
|
kubectl -n plausible create configmap plausible \
|
|
--from-literal=BASE_URL=http://$(minikube ip):$(kubectl -n plausible get svc plausible -o=jsonpath='{.spec.ports[0].nodePort}')
|
|
#+end_src
|
|
|
|
#+NAME: install Plausible
|
|
#+begin_src shell :results silent
|
|
kubectl -n plausible apply \
|
|
-f event-data-persistentvolumeclaim.yaml \
|
|
-f mail-deployment.yaml \
|
|
-f plausible-deployment.yaml \
|
|
-f plausible-events-db-deployment.yaml \
|
|
-f plausible-events-db-service.yaml
|
|
#+end_src
|
|
|
|
* Notes and references
|
|
- https://docs.plausible.io/self-hosting-configuration/
|
|
- https://github.com/plausible/hosting/blob/c5146231aa0bf8d7a0da11370845e11a4973373e/docker-compose.yml
|