From b7fafeb8fb49a33bd34f6abfbe70d86d0f89f343 Mon Sep 17 00:00:00 2001 From: LecygneNoir Date: Sat, 16 Nov 2019 11:43:23 +0100 Subject: [PATCH] Add a values.yml example for helm --- README.md | 15 +++++--- values.yml.sample | 93 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 103 insertions(+), 5 deletions(-) create mode 100644 values.yml.sample diff --git a/README.md b/README.md index 129bca1..9992d35 100644 --- a/README.md +++ b/README.md @@ -4,10 +4,19 @@ Federated (ActivityPub) video streaming platform using P2P (BitTorrent) directly --- +## Status : WIP + +- [x] Run Peertube and Redis +- [x] Use pvc to persist data +- [ ] Improve readme for deployment + ## Before deploy Currently if you want use persistent volume you need to create persistent volume and persistent volume claim +You also need a postgresql server. +If you know what you are doing and want to store postgres in Kubernetes, I suggest the excellent [stolon](https://github.com/helm/charts/tree/master/stable/stolon). + ## Installing the chart `$ helm install --name my-release peertube` @@ -25,11 +34,7 @@ Alternatively, a YAML file that specifies the values for the parameters can be p `$ helm install --name my-release -f values.yaml peertube` -## Status : WIP - -- [x] Run -- [x] Persist perrtube data (redis and postgresql to) -- [ ] Improve readme for deployment +See the values.yml.sample for example of values to use ## Source diff --git a/values.yml.sample b/values.yml.sample new file mode 100644 index 0000000..b7edc38 --- /dev/null +++ b/values.yml.sample @@ -0,0 +1,93 @@ +--- +# Default values for peertube. +# This is a YAML-formatted file. +# Declare variables to be passed into your templates. + +replicaCount: 1 + +image: + repository: chocobozzz/peertube + tag: v2.0.0-stretch + pullPolicy: IfNotPresent + +service: + type: ClusterIP + port: 9000 + +ingress: + enabled: true + annotations: + kubernetes.io/ingress.class: haproxy + kubernetes.io/tls-acme: "true" + certmanager.k8s.io/cluster-issuer: your-certmanager + path: / + hosts: + - peertube.domain.tld + tls: + - secretName: crt-peertube.domain.tld + hosts: + - peertube.domain.tld + +resources: + # We usually recommend not to specify default resources and to leave this as a conscious + # choice for the user. This also increases chances charts run on environments with little + # resources, such as Minikube. If you do want to specify resources, uncomment the following + # lines, adjust them as necessary, and remove the curly braces after 'resources:'. + requests: + cpu: 3 + memory: 6Gi + +nodeSelector: {} + +tolerations: [] + +# NodeAffinity is useful if you want to specify some nodes for Peertube, eg nodes with high CPU for encoding for example +#affinity: +# nodeAffinity: +# preferredDuringSchedulingIgnoredDuringExecution: +# - weight: 1 +# preference: +# matchExpressions: +# - key: kubernetes.io/hostname +# operator: In +# values: +# - yournodes.domain.tld + +# Currently pvc are not handled by helm, you need to create both config and data volume before launching the helm +persistence: + data: + enabled: true + existingClaim: pvc-pt-prod + config: + enabled: true + existingClaim: pvc-ptconfig-prod + +environment: + hostname: peertube.domain.tld + http: 443 + httpsEnabled: true + dbHostname: your.postgresql.hostname + dbUser: peertube + dbPassword: postgres + redisHostname: redis + smtpUser: peertube@peertube.domain.tld + smtpPassword: smtppassword + smtpHostname: smtp.peertube.domain.tld + smtpPort: 465 + smtpFrom: peertube@peertube.domain.tld + smtpTls: true + admin: peertube@peertube.domain.tld + signup: false + transcoding: true + +redis: + usePassword: false + password: peertube + master: + persistence: + enabled: true + path: /data + # Currently pvc are not handled by helm, you need to create redis volume before deploying helm + persistence: + enabled: true + existingClaim: pvc-redis-prod