Czy ktoś kiedyś myślał, żeby na pracowniach dostępny był docker?
A może jest, tylko że trzeba być bardziej wtajemniczonym?
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.
Ale to należy jakąś petycje pisać? Do administratorów? Dryrektora ii?
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.
Najlepiej skontaktować się z p. Wojciechem Leśniewskim z Centrum Obliczeniowego. To on opiekuje się komputerami pracownianymi.
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.