Sí , puedes usar secretos si usas un archivo de composición . (No necesita ejecutar un enjambre).
Utiliza un archivo componer con docker-compose : hay documentación para "secretos" en un archivo docker-compose.yml .
Cambié a Docker-compose porque quería usar secretos. Estoy feliz de haberlo hecho, parece mucho más limpio. Cada servicio se asigna a un contenedor. Y si alguna vez quieres cambiar a ejecutar un enjambre, básicamente ya estás allí.
Nota: Los secretos no se cargan en el entorno del contenedor, se montan en / run / secrets /
Aquí hay un ejemplo:
1) Estructura del proyecto:
|
|--- docker-compose.yml
|--- super_duper_secret.txt
2) contenido de docker-compose.yml:
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) contenido super_duper_secret.txt:
Whatever you want to write for a secret really.
4) Ejecute este comando desde la raíz del proyecto para ver que el contenedor tiene acceso a su secreto (Docker debe estar ejecutándose y docker-compose instalado):
docker-compose up --build my_service
Debería ver que su contenedor genera su secreto.