Stworzyłem obraz dokowania dla jenkins / jnlp i używając go w klastrze kubernetes, aby obrócić dynamiczne niewolniki. Dzięki temu mogę sprawdzić mój kod i uruchomić kompilację na dynamicznych niewolnikach.
Jednak, gdy wspomnę o objętości (jenkins_home ie/ mycom / jenkins) wewnątrz konfiguracji wtyczki, jak twierdzi persistant volume, obserwuję, że uprawnienie do ścieżki mount zmienia się na "nobody", w przeciwieństwie do "jenkins". Nie działa moja kompilacja Jenkins, ponieważ nie można utworzyć obszaru roboczego w tym samym folderze.
Dokument Kubernetes stwierdza, że możemy przekazaćSzczegóły grupy f jako część kontekstu bezpieczeństwa, który jest częścią definicji zasobu. Ale nie widzę tej opcji w wtyczce Jennkins-Kubernetes. Czy jest jakiś sposób, abym mógł przekazać szczegóły "RunAsUser" lub "fsgroup" do zestawu z Jenkins?
Odpowiedzi:
0 dla odpowiedzi № 1Obejściem problemu było uzyskanie dostępu "777"do JENKINS_HOME w jednej kapsule hosta Kubernetes. To przetrwało we wszystkich innych strąkach, które również zostały stworzone. W ten sposób za każdym razem, gdy mój kontener działa z użytkownikiem jenkins, był on w stanie stworzyć przestrzeń roboczą w katalogu jenkins_home, która nie miała dostępu dla nikogo.
0 dla odpowiedzi nr 2
Istnieje możliwość określenia RunAsUser
i FsGroup
kiedy instalujesz jenkins za pomocą tabeli steru. Możesz również określić swoje PersistentVolumeClaim
. Zobacz values.yaml
tutaj - https://github.com/kubernetes/charts/tree/master/stable/jenkins