¿Cómo usar secretos de docker sin un clúster de enjambre?

Actualmente tenemos una aplicación en ejecución en un solo contenedor docker, la aplicación necesita que se pasen todo tipo de datos confidenciales como variables de entorno,

Los estoy poniendo en el comando run para que no terminen en la imagen y luego en un repositorio, sin embargo, termino con un comando run muy inseguro,

Ahora, entiendo que existen secretos de docker, sin embargo, ¿cómo puedo usarlos sin implementar un clúster? ¿o hay alguna otra forma de proteger estos datos?

Atentamente,

, puedes usar secretos si usas un componer archivo. (No es necesario ejecutar un enjambre).

Utiliza un archivo de composición con docker-componer: hay documentación para "secretos" en un docker-compose.archivo 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) docker-compose.contenido de yml:

version: "3.6"services:  my_service:    image: centos:7    entrypoint: "cat /run/secrets/my_secret"    secrets:      - my_secretsecrets:  my_secret:    file: ./super_duper_secret.txt

3) super_duper_secret.contenido 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 en ejecución y docker-compose instalado):

docker-compose up --build my_service

Deberías ver que tu contenedor muestra tu secreto.

No puedes... No admite secretos sin enjambre.A menos que "pueda ser" que "Enjambre" usando solo un nodo.

La otra solución sería, creo, utilizar un software de bóveda de terceros como este:

https://www.vaultproject.io/

Pero luego, para usar los secretos en sus contenedores de Vault, necesitaría leer el documento.

Espero que esto te lleve al camino correcto para comenzar.

Hay varias formas de usar secretos sin enjambre Using Docker Secrets during Development – mikesir87's blog