Ja , Sie können Geheimnisse verwenden, wenn Sie eine Compose-Datei verwenden . (Du musst keinen Schwarm rennen).
Sie verwenden eine Compose-Datei mit Docker-Compose : In einer Docker-Compose.yml-Datei ist Dokumentation für "Geheimnisse" enthalten .
Ich wechselte zu Docker-Compose, weil ich Geheimnisse verwenden wollte. Ich bin froh, dass ich es getan habe, es scheint viel sauberer zu sein. Jeder Dienst wird einem Container zugeordnet. Und wenn Sie einmal auf das Laufen eines Schwarms umsteigen möchten, sind Sie im Grunde schon da.
Hinweis: Geheimnisse werden nicht in die Umgebung des Containers geladen, sondern in / run / secrets / eingebunden.
Hier ist ein Beispiel:
1) Projektstruktur:
|
|--- docker-compose.yml
|--- super_duper_secret.txt
2) docker-compose.yml Inhalt:
version: "3.6"
services:
my_service:
image: centos:7
entrypoint: "cat /run/secrets/my_secret"
secrets:
- my_secret
secrets:
my_secret:
file: ./super_duper_secret.txt
3) super_duper_secret.txt Inhalt:
Whatever you want to write for a secret really.
4) Führen Sie diesen Befehl im Stammverzeichnis des Projekts aus, um festzustellen, ob der Container Zugriff auf Ihr Geheimnis hat. (Docker muss ausgeführt werden und docker-compose muss installiert sein.)
docker-compose up --build my_service
Sie sollten sehen, dass Ihr Container Ihr Geheimnis ausgibt.