Code Monkey home page Code Monkey logo

helm-bitwarden_rs's Introduction

Kubernetes deployment via Helm

Build Status Helm chart to deploy a fully functional and secure bitwarden_rs application in Kubernetes.

Requirements

Requires a Kubernetes cluster setup, with dns, storage and Helm and Tiller configured.

A cluster for testing, can be setup (on Ubuntu) using:

snap install microk8s --classic
microk8s.start
microk8s.status --wait-ready
microk8s.enable dns dashboard
microk8s.status --wait-ready
snap install helm --classic
helm init --wait

Usage

The minimal deployment using all default values;

DOMAIN=bitwarden.yourdomain.com
helm install --wait --set "ingress.hosts={$DOMAIN},ingress.tls[0].hosts={$DOMAIN},ingress.tls[0].secretName=bitwarden-tls-secret" .

This will setup bitwarden_rs with a persistent storage and a backup volume, with backups being shot at 3:00 every night.

HTTPS certificates will automatically be generated using Let's Encrypt and HTTPS will be terminated at the Ingress Controller. This assumes that a Kubernetes NGINX Ingress Controller is running, and that cert-manager has been set up and configured. See here (ingress) and here (cert-manager) for examples on how to set either up.

If you do not have Ingress and cert-manager set up, you can disable ingressing completely, by deploying with:

helm install --wait --set "ingress.enabled=false"

You will however need another way to access the bitwarden pod, for instance via port-forwarding:

export POD_NAME=$(kubectl get pods --namespace default -l "app.kubernetes.io/name=bitwarden" -o jsonpath="{.items[0].metadata.name}")
kubectl port-forward $POD_NAME 31111:80

Removal

To remove the installation run:

helm delete --purge $(helm list | grep "bitwarden" | cut -f1)

Configuration

Several konfiguration options are available, they can be seen in values.yaml, and override like above using --set or using --values, see more here.

Screenshot

bitwarden_rs

helm-bitwarden_rs's People

Contributors

d-matt avatar jonkerj avatar luqasn avatar mprechtl avatar robinelfrink avatar sankar4n avatar sebtiz13 avatar skeen avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

helm-bitwarden_rs's Issues

helm install not working Error: template:

Error: template: bitwarden/templates/ingress.yaml:43:20: executing "bitwarden/templates/ingress.yaml" at <.Capabilities.APIVersions.Has>: can't evaluate field Capabilities in type interface {}

kubectl version
Client Version: version.Info{Major:"1", Minor:"20", GitVersion:"v1.20.4", GitCommit:"e87da0bd6e03ec3fea7933c4b5263d151aafd07c", GitTreeState:"clean", BuildDate:"2021-02-18T16:12:00Z", GoVersion:"go1.15.8", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.4", GitCommit:"3cce4a82b44f032d0cd1a1790e6d2f5a55d20aae", GitTreeState:"clean", BuildDate:"2021-08-11T18:10:22Z", GoVersion:"go1.16.7", Compiler:"gc", Platform:"linux/amd64"}

stupid question

how can i install the package?

i have donloaded the repo and modified values.yaml.

helm install bitwarden bitwarden -n=bitwarden -f values.yaml
fails

? thanks!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.