Docker - pracownie


(Kacper Kulczak) #1

Czy ktoś kiedyś myślał, żeby na pracowniach dostępny był docker?
A może jest, tylko że trzeba być bardziej wtajemniczonym?


(Radosław Miernik) #2

Nie, nie ma. Jestem za, a nawet poszedłbym krok dalej - Kubernetes albo Docker Swarm. Moglibyśmy przestać się martwić, że ten komputer jest zajęty: nasz kontener sam znalazłby się na dostępnym komputerze (lub nawet kilku).

Może być tylko problem z tym, że obrazy byłyby dzielone i z czasem byłoby ich za dużo. Same dostępy i limitowanie per użytkownik też byłyby trudne do skonfigurowania i utrzymania.


(Kacper Kulczak) #3

Ale to należy jakąś petycje pisać? Do administratorów? Dryrektora ii?


(Radosław Miernik) #4

Ja bym może najpierw zapytał, choć sam nie wiem kogo. To będzie raczej duże przedsięwzięcie, może nawet za duże do utrzymania.


(Ref Kaleta) #5

Najlepiej skontaktować się z p. Wojciechem Leśniewskim z Centrum Obliczeniowego. To on opiekuje się komputerami pracownianymi.


(JCh) #6

Docker to zło na systemie współdzielonym, bo to jest jedna wielka dziura bezpieczeństwa. Z kontenera zawsze da się uciec, do tego sam docker jest dziwnie napisany - program docker nie ma żadnych uprawnień, ale za to gada z uprzywilejowanym dockerd i my myślmy że pisząc docker run uruchamiamy coś jako użytkownik i nie potrzebujemy roota, a tymczasem to jest docker <-> dockerd który udaje że go nie ma <-> kontener i dockerd reimplementuje całą logikę zarządzania uprawnieniami, bo cała autoryzacja uzytkowników opiera się na dostępie do pliku z gniazdkiem dockerd. IMHO docker to taki hipsetrski sendmail jeśli chodzi o modułowość i podejście do bezpieczeństwa. OK w systemie gdzie wszyscy sobie ufają, ale nawet w warunkach II niedopuszczalne.

Do łatwiejszego znajdowania wolnych komputerów i przydziału CPU/GPU/RAM można zrobić jakąś kolejkę zadań. Kiedyś próbowaliliśmy zrobic SLURM i z nim problem jest tylko taki, że nie ma komu tego dobrze skonfigurować, ale wszystko się da zrobić, tj:

  • przydział zasobów i wymuszanie limitów (CPU, GPU, RAM, czas)
  • ograniczenie zasobów zdobywanych przez sesje interaktywne/ssh
  • kolejkowanie zadań

Gdyby ktoś chciał z tym pomóc, mogę opowiedzieć więcej.