Pull to refresh

Comments 13

Ядро Linux умеет это делать с 70-х годов.

А винда ещё с 50-x!

имелось ввиду Unix, опечатка

Отличная статья!

Спасибо Большое!

В chmod 4750 весь смысл

Докер-файл:

RUN ... && chmod 4755 suex

у вас отличное внимание! 👍 но я исправлять не буду, потому что в этом примере это не принципиально важно. даже с маской 4755 ничего посторонний пользователь сделать не сможет. он должен быть в группе suex по-любому

а, кстати, есть плюс использования маски 4755 в контейнере.

если юзер не в группе suex, то в логах будет четко об это написано.

если поставить маску 4750, то в логах будет только "Permission denied", что может усложнить поиск проблемы из-за отсутствия контекста.

Так и не понял, зачем запускать скрипт entrypoint от рута вместо того, чтобы сразу запускать команду от нужного пользователя, указав его в Dockerfile, docker-compose или в манифесте деплоймента в k8s.

тут нет никакой загадки, это просто наглядный пример!

а в процессе работы у каждого может быть свой индивидуальный use-case.

Я правильно понимаю, что единственная причина использовать suex в контейнере - это необходимость сделать что-то при запуске сначала от рута, а уже потом сбросить привилегии для запуска?

Если всё уже заранее приготовлено при билде - то мы можем просто сделать USER app в докерфайле и это будет даже проще?

да, вы правы, но в сложных пайплайнах в CI/CD есть много нюансов.

CI/CD не всегда выполняется в контейнере, часто используются bash скрипты c динамической логикой и гейтами.

не стоит преуменьшать сферу применения до одного Dockerfile.

у меня лично десятки юскейсов, в которых мне удобно повседневно использовать `suex cat something` или `sush postgres` и тд без конфигов sudo

Да я не спорю, вы правы, я просто хотел уточнить.

# Инициализация, требующая рута
chown -R app:app /data

# Заменяем себя на приложение от имени app-юзера
exec suex app "$@"

в этом примере если в Dockerfile поставить USER app перед ENTRYPOINT, тогда в скрипте всё равно нужны права рута для chown ...

Sign up to leave a comment.

Articles