1
0
Fork 0
mirror of https://gitlab.com/bramw/baserow.git synced 2025-02-06 05:40:09 +00:00
bramw_baserow/docs/installation/install-with-helm.md
2024-12-20 10:26:36 +00:00

99 lines
3.2 KiB
Markdown

# Install with Helm
## Official Helm chart
The official Helm chart of Baserow can be found here
https://artifacthub.io/packages/helm/baserow-chart/baserow. By default, it includes
everything you need like PostgreSQL, Redis, MinIO for S3, and Caddy for automatic SSL
certificates. Here you can also documentation for all the configuration possibilities
like using an external PostgreSQL server, how to setup Caddy with various Cloud
providers, add environment variables, and more.
### Installation
Create a `config.yaml` file with the minimum configuration that defines the domains
you would like it to run on.
```
global:
baserow:
domain: "your-baserow-domain.com"
backendDomain: "api.your-baserow-domain.com"
objectsDomain: "objects.your-baserow-domain.com"
```
To install the chart with the release name `my-baserow` run the following commands:
```
helm repo add baserow-chart https://baserow.gitlab.io/baserow-chart
helm install my-baserow baserow-chart/baserow --namespace baserow --create-namespace --values config.yaml
```
### Upgrading
You can change the Baserow version you're running by updating your `config.yaml`
file directly.
```
global:
baserow:
image: 1.30.1
```
Or use the latest Helm chart default. Then run the following command to upgrade your
installation.
```
helm upgrade my-baserow baserow-chart/baserow --namespace baserow --values config.yaml
```
## Community Maintained Helm Chart
Find the community
Baserow [helm chart here](https://artifacthub.io/packages/helm/christianhuth/baserow)
maintained
by [Christian Huth](https://github.com/christianhuth).
We recommend that you:
1. Run the chart with ingress enabled:
2. `backend.ingress.enabled=true`
3. `frontend.ingress.enabled=true`
4. Make sure you configure two domains, one for the backend api API one for the frontend
server.
5. Set `config.publicFrontendUrl=https://your-baserow-servers-domain.com`
5. Set `config.publicBackendUrl=https://api.your-baserow-servers-domain.com`
6. Configure all the relevant `backend.config.aws` variables to upload and serve user
files in a S3 compatible service of your own choosing.
### Deploying Baserow using Helm and K3S
[K3S](https://k3s.io/) is an easy way of getting a local K8S cluster running locally for
testing and development. This guide will walk you through setting it K3S with Baserow
using the community helm chart above.
1. Install [K3S](https://docs.k3s.io/quick-start)
2. Install [Helm](https://helm.sh/docs/helm/helm_install/)
3. Configure Helm to use your K3S cluster:
```bash
# From https://devops.stackexchange.com/questions/16043/error-error-loading-config-file-etc-rancher-k3s-k3s-yaml-open-etc-rancher
export KUBECONFIG=~/.kube/config
mkdir ~/.kube 2> /dev/null
# Make sure you aren't overriding an existing k8s configuration in ~/.kube/config
(set -o noclobber; sudo k3s kubectl config view --raw > "$KUBECONFIG")
chmod 600 "$KUBECONFIG"
# Check you can access the cluster
helm ls --all-namespaces
# You should see something like
# NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION
```
4. Install Baserow using Helm
```bash
helm repo add christianknell https://christianknell.github.io/helm-charts
helm repo update
helm install 1.5.3 christianknell/baserow
# Finally follow the printed instructions.
```