Die Variablen für die Postgres-Datenbank und den Meilisearch-Index.
Standardmäßig betreibt das Image beides selbst und erzeugt die Passwörter:
Eine normale Installation setzt keine dieser Variablen. Sie dienen einer
Installation, die ihre eigene Datenbank oder Suchmaschine mitbringt oder die
eingebetteten feinjustiert. Die Vorgehensweisen stehen unter
Erweiterte Bereitstellungen. Keine
von ihnen hat ein Gegenstück im Verwaltungsbereich.
Nicht gesetzt: eingebettet, wenn EVEY_DB_HOST nicht gesetzt ist, sonst extern. true oder false, um es ausdrücklich festzulegen. Wird vom Startskript gelesen.
keine
EVEY_POSTGRES_DATA_DIR
/data/postgres
Wo der eingebettete Cluster liegt. Er muss auf einem lokalen Dateisystem liegen, nicht auf einer Netzwerkfreigabe. Wird vom Startskript gelesen.
keine
EVEY_POSTGRES_IMPORT
/data/postgres-import.sql.gz
Ein mit gzip gepackter pg_dump, der in den eingebetteten Cluster eingespielt wird, wenn dieser zum ersten Mal entsteht. Danach wird die Datei in *.imported-<date> umbenannt. Wird mit einer Meldung ignoriert, wenn der Cluster schon existiert. Wird vom Startskript gelesen.
keine
EVEY_DB_HOST
localhost
Der Datenbank-Host. Wird er gesetzt, ist die eingebettete Datenbank aus.
keine
EVEY_DB_PORT
5432
Der Datenbank-Port.
keine
EVEY_DB_USER
evey
Der Datenbank-Login. Ist er ein Superuser (der eingebettete Cluster und die mitgelieferte Compose-Datei), behält der Server ihn nur für die Wiederherstellung und läuft als EVEY_DB_APP_USER.
keine
EVEY_DB_APP_USER
evey_app
Die Rolle ohne Sonderrechte, unter der der Server und seine Migrationen laufen, wenn EVEY_DB_USER ein Superuser ist. Wird beim Start angelegt, bekommt die Datenbank und ihre Objekte übertragen und bei jedem Start ein neues Zufallspasswort (das nirgends gespeichert wird). Eine SQL-Injection kann dann keine Programme auf dem Host starten und keine Dateien dort lesen.
keine
EVEY_DB_PRIVILEGE_SPLIT
true
false lässt alles als EVEY_DB_USER laufen, auch als Superuser. Eine Ausweichlösung, falls eine Datenbank die Trennung ablehnt; sonst bricht der Start ab und nennt diese Variable.
keine
EVEY_DB_NAME
evey
Der Name der Datenbank.
keine
EVEY_DB_PASSWORD
erzeugt
Das Passwort. Bei einer externen Datenbank verweigert der Server den Start mit dem Wert evey und warnt bei changeme.
keine
EVEY_DB_PASSWORD_FILE
/data/keys/postgres.password
Eine Datei mit dem Passwort, gelesen, wenn EVEY_DB_PASSWORD nicht gesetzt ist. Vom Image gesetzt.
keine
EVEY_DB_SSLMODE
disable bei Loopback, sonst prefer
disable, prefer, require oder verify-full. prefer gegenüber einem entfernten Host erzeugt eine Warnung im Protokoll: Verwenden Sie require oder verify-full.
keine
EVEY_DB_MAX_OPEN_CONNS
25
Offene Verbindungen zur Datenbank. Jede kostet auf der Postgres-Seite Speicher; erhöhen Sie den Wert nur für eine große Installation.
keine
EVEY_DB_MAX_IDLE_CONNS
10
Verbindungen, die im Pool ungenutzt offen bleiben. Höchstens so viele wie die offenen Verbindungen.
false verwendet statt der eingebetteten Instanz das Meilisearch unter EVEY_MEILI_URL. Wird vom Startskript gelesen.
keine
EVEY_MEILI_URL
http://localhost:7700
Die Adresse von Meilisearch.
keine
MEILI_MASTER_KEY
erzeugt
Der Meilisearch-Schlüssel. Bei einer externen Instanz verhindert ein leerer Schlüssel oder ein Platzhalter den Start; ein Schlüssel unter 16 Zeichen erzeugt eine Warnung im Protokoll.
keine
MEILI_MASTER_KEY_FILE
/data/keys/meili.key
Eine Datei mit dem Schlüssel, gelesen, wenn MEILI_MASTER_KEY nicht gesetzt ist. Vom Image gesetzt.
keine
MEILI_DATA_DIR
/data/meili
Wo der eingebettete Index liegt. Wird vom Startskript gelesen.
keine
MEILI_MAX_INDEXING_MEMORY
etwa 20 % des Speichers des Containers, mindestens 128 MiB
Der Speicher, den das eingebettete Meilisearch zum Indexieren nutzen darf. Wird aus der Grenze des Containers berechnet, nicht aus dem Speicher der Maschine, damit ein Scan einen kleinen Container nicht erschöpft. Ein ausdrücklich gesetzter Wert wird unverändert weitergegeben.