Задать вопрос
Ответы пользователя по тегу Информационная безопасность
  • Можно ли использовать docker secrets как переменную окружения в сервисе docker swarm?

    @catch-a-chalk
    Привет! Да, можно. Как один из способов это загрузить секрет в файл и потом закинуть его в переменную окружения:

    1. Создание секрета в swarm
    echo "my_super_secret" | docker secret create db_pass -


    2. Монтируем секрет в файл
    // docker-compose.yml
    version: "3.8"
    
    services:
      app:
        image: my_app
        secrets:
          - db_pass
        environment:
          DB_PASSWORD_FILE: /run/secrets/db_pass
        deploy:
          mode: replicated
          replicas: 1
    
    secrets:
      db_pass:
        external: true


    3. В приложении читаем переменную из файла
    const dbPassword = process.env.DB_PASSWORD_FILE 
      ? fs.readFileSync(process.env.DB_PASSWORD_FILE, 'utf8').trim()
      : "default_pass";
    Ответ написан
    Комментировать