#docker #kubernetes #dockerfile #jenkins-pipeline #openshift
#docker #kubernetes #dockerfile #дженкинс-конвейер #openshift
Вопрос:
Я пытаюсь реализовать файловые системы, доступные только для чтения, для моих модулей, работающих на Openshift.
Я использую Jenkins для создания и развертывания этих модулей в Openshift.
Для сборки я использую :
def builddemo = openshift.newBuild("${Image}~${Github}", "--name=${Name}", "--source-secret=githubsecret", "--to=${artifactorylocation}", "--push-secret=artifactorysecret", "--to-docker=true" , "--strategy=docker")
Для развертывания я использую файлы YAML.
Я хотел бы сделать свою файловую систему доступной только для чтения.
Я уже пробовал документ ниже :
https://github.com/nmasse-itix/OpenShift-Examples/tree/master/Read-Only-FS
Но у меня нет прав администратора в кластере для изменения конфигурации безопасности. У меня есть права администратора только в моем собственном пространстве имен.
from server for: "read-only-scc.yaml": securitycontextconstraints.security.openshift.io "readonly-fs" is forbidden: User "USERNAME" cannot get securitycontextconstraints.security.openshift.io at the cluster scope: no RBAC policy matched
В любом случае, я могу это сделать.
Комментарии:
1. Мне любопытно, зачем вам это нужно. Честно говоря, я не знаю ответа, но этот вопрос возникает редко. Обычный способ защитить файловую систему модуля от процессов в модуле — это запустить эти процессы от имени пользователя, у которого нет прав на запись в файлы. Для этого вам не нужно разрешение администратора кластера — это просто вопрос того, как вы создаете свой образ контейнера.
2. Речь идет не о защите файлов. Но об использовании диска. В нашем кластере prod доступно очень ограниченное физическое пространство, и я не хочу, чтобы мои модули со временем увеличивались, поэтому я хочу сделать их доступными только для чтения. Хотя в моем Dockerfile у пользователя нет прав на запись в файлах приложения, но меня беспокоят другие каталоги, которые могут расти со временем.
3. Какие это могут быть каталоги? Если ваше приложение не может писать, что может? Я думаю, что создание файловой системы модуля только для чтения на уровне платформы — это довольно необычный шаг.
4. Не какой-либо конкретный каталог. Но любой каталог, который может использовать дисковое пространство базовых хостов. Да, мое приложение не записывает… Могут быть какие-то журналы. Это просто предостережение, чтобы избежать сбоев. Но я согласен с вашей точкой зрения. Я подумываю о том, чтобы отслеживать мои файловые системы на предмет увеличения использования с течением времени, и если это произойдет, тогда нужно это отладить. Но я подумал, может быть, есть более простой способ сделать все доступным для чтения.