Zum Hauptinhalt springen

Umgebungsvariablen

Möglicherweise möchtest du Umgebungsvariablen, welche beispielsweise Datenbank-Credentials beinhalten, setzen. Diese werden dann an die Applikation zur Laufzeit weitergegeben.

Umgebungsvariablen beim Erstellen einer App setzen​

Jede Deploio-App erhält automatisch die folgenden Umgebungsvariablen:

VariableBeschreibungBuild-ZeitLaufzeit
PORTDer Port, auf dem deine App erreichbar ist.—✓
DEPLOIO_APP_NAMEDer Name deiner Anwendung.—✓
DEPLOIO_PROJECT_NAMEDer Name des Projekts, zu dem deine App gehört.—✓
DEPLOIO_RELEASE_NAMEDer Name des aktuell aktiven Releases.—✓
DEPLOIO_GIT_REVISIONDie Git-Revision (Commit-SHA) des deployten Quellcodes.✓✓

Bei Dockerfile Builds müssen Variablen, welche zur Build Zeit verfügbar sein sollen, als ARG im Dockerfile deklariert werden. Weitere Details findest du unter Dockerfile Build.

Umgebungsvariablen bei Applikationserstellung setzen​

Du kannst Umgebungsvariablen bei der Applikationserstellung mittels des --env- Flags definieren:

--env=KEY=VALUE;... Environment variables which are passed to the app at runtime.

$ nctl create app rails-example --env=RAILS_ENV=dev

Mehrere Umgebungsvariablen können dabei durch vielfaches Setzen der --env- Option oder durch Abtrennung mittels Semikola definiert werden.

$ nctl create app rails-example --env=RAILS_ENV=dev --env=MAIL_USERNAME=test
$ nctl create app rails-example --env='RAILS_ENV=dev;MAIL_USERNAME=test'

Aktualisieren von Umgebungsvariablen​

Bei bestehenden Deploio-Applikationen kannst du mittels nctl update app neue Umgebungsvariablen hinzufügen oder bereits bestehende ändern.

$ nctl update app rails-example --env=RAILS_ENV=prod

Um Umgebungsvariablen zu löschen, kannst du das --delete-env-Flag nutzen.

$ nctl update app rails-example --delete-env=RAILS_ENV

Umgebungsvariablen anzeigen​

Um die gesetzten Umgebungsvariablen anzuzeigen, kannst du den nctl get app- Befehl mit dem yaml-Ausgabeformat nutzen.

$ nctl get app rails-examle -o yaml

kind: Application
apiVersion: apps.nine.ch/v1alpha1
metadata:
name: rails-example
...
spec:
forProvider:
config:
env:
- name: MAIL_USERNAME
value: test
...