SjälvhotellInstallations- och distributionsguider

OpenShift-distribution

Den här artikeln dyker in i hur du kan ändra din Bitwarden självvärderade Helm Chart-distribution baserat på OpenShifts specifika erbjudanden.

OpenShift-rutter

Det här exemplet kommer att visa OpenShift-rutter istället för standardingångskontrollerna.

Inaktivera standardinträde

  1. Öppna my-values.yaml.

  2. Inaktivera standardingången genom att ange ingress.enabled: false:

Bash
general: domain: "replaceme.com" ingress: enabled: false

De återstående ingångsvärdena kräver ingen modifiering, eftersom inställningen ingress.enabled: false kommer att uppmana diagrammet att ignorera dem.

Lägg till råmanifest för rutter

Leta upp avsnittet rawManifests i my-values.yaml. Det här avsnittet är där OpenShift Route-manifesterna kommer att tilldelas.

En exempelfil för en rawManifests-sektion som använder OpenShift Routes kan laddas ner .

note

In the example provided above, destinationCACertificate has been set to an empty string. This will use the default certificate setup in OpenShift. Alternatively, specify a certificate name here, or you can use Let's Encrypt by following this guide. If you do, you will be required to add kubernetes.io/tls-acme: "true" to the annotations for each route.

Klass för delad förvaring

En delad lagringsklass krävs för de flesta OpenShift-distributioner. ReadWriteMany lagring måste vara aktiverad. Detta kan göras med den metod du väljer, ett alternativ är att använda NFS Subdir External Provisioner.

Hemligheter

Kommandot oc kan användas för att distribuera hemligheter. Ett giltigt installations-ID och nyckel kan hämtas från bitwarden.com/host/. För mer information, se Vad används mitt installations-id och installationsnyckel till?

Följande kommando är ett exempel:

warning

This example will record commands to your shell history. Other methods may be considered to securely set a secret.

Bash
oc create secret generic custom-secret -n bitwarden \ --from-literal=globalSettings__installation__id="REPLACE" \ --from-literal=globalSettings__installation__key="REPLACE" \ --from-literal=globalSettings__mail__smtp__username="REPLACE" \ --from-literal=globalSettings__mail__smtp__password="REPLACE" \ --from-literal=globalSettings__yubico__clientId="REPLACE" \ --from-literal=globalSettings__yubico__key="REPLACE" \ --from-literal=globalSettings__hibpApiKey="REPLACE" \ --from-literal=SA_PASSWORD="REPLACE" # If using SQL pod # --from-literal=globalSettings__sqlServer__connectionString="REPLACE" # If using your own SQL server

Skapa ett tjänstekonto

Ett servicekonto i OpenShift krävs eftersom varje container måste köra förhöjda kommandon vid uppstart. Dessa kommandon blockeras av OpenShifts begränsade SCC:er. Vi måste skapa ett servicekonto och tilldela det till anyuid SCC.

  1. Kör följande kommandon med kommandoradsverktyget oc:

    Bash
    oc create sa bitwarden-sa oc adm policy add-scc-to-user anyuid -z bitwarden-sa
  2. Uppdatera sedan my-values.yaml för att använda det nya tjänstekontot. Ställ in följande nycklar till namnet på tjänstekontot bitwarden-sa som skapades i föregående steg:

    Bash
    component.admin.podServiceAccount component.api.podServiceAccount component.attachments.podServiceAccount component.events.podServiceAccount component.icons.podServiceAccount component.identity.podServiceAccount component.notifications.podServiceAccount component.scim.podServiceAccount component.sso.podServiceAccount component.web.podServiceAccount database.podServiceAccount

    Här är ett exempel i filen my-values.yaml:

Bash
component: # The Admin component admin: # Additional deployment labels labels: {} # Image name, tag, and pull policy image: name: ghcr.io/bitwarden/admin resources: requests: memory: "64Mi" cpu: "50m" limits: memory: "128Mi" cpu: "100m" securityContext: podServiceAccount: bitwarden-sa
note

You can create your own SCC to fine-tune the security of these pods. Managing SCCs in OpenShift describes the out-of-the-box SSCs and how to create your own if desired.