172 похожих чатов

Добрый вечер. Хочу поднять весьма холиварный вопрос, но не закидывайте

сразу камнями. Пытаюсь понять best practice в вопросе хранения секретов. Без кубера, номада и прочего. Вот есть просто гитлаб, есть compose, есть приватное docker хранилище и есть CI/CD. Вот что не начнешь читать, везде пишут: .env в репе не храни, .env на проде не храни, variables в gitlab это небезопасно, не используй их. В итоге - как правильнее всего просто добавлять переменные окружения в собираемые контейнеры в CI/CD и отправлять в приватную репу если ничего нельзя?)

11 ответов

23 просмотра

ну, не использовать секреты per se 🙂

Sergey-Zhuravlev Автор вопроса
Petro
ну, не использовать секреты per se 🙂

Ну а как их не использовать если на прод должен прилетать контейнер с переменными окружения где все доступы и к БД и прочему?)) Да и долететь с гита на сервер целевой все это как то должно ведь? То есть как минимум залезть по ssh и дернуть docker-compose pull

не добавлять секреты в image а делать это в runtime через volume или через consul-template

Sergey Zhuravlev
Ну а как их не использовать если на прод должен пр...

зависит от ситуации, но например контейнер может пойти в хранилище, например HAshCorp Vault, аутентифицироваться, скажем, своим SerivceAccount, получить роль и ролью взять креды из волты.

Sergey-Zhuravlev Автор вопроса
AlexD
не добавлять секреты в image а делать это в runtim...

то есть вместо закладывания в image переменных окружения с секретами мы пробрасываем volume Значит храним секреты на хосте?

Sergey Zhuravlev
то есть вместо закладывания в image переменных окр...

Если у вас масштаб docker-compose то на хосте. Но по хорошему в Vault

по http доставай из внешего сервиса

Sergey-Zhuravlev Автор вопроса
Roman Timofeev
по http доставай из внешего сервиса

Ну это как я и написал про passbolt Только по https наверно все таки))

Можно просто файл с паролями положить рядом в тот же git

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
Карта сайта