Cześć,
siedzę sobie i przenoszę infrafiufiurę FWiOO (inFWiOOfiufiurę) z serwera na serwer, przy okazji postanowiłem porzucić libvirt/kvm (który notabene sprawdzał się doskonale) na rzecz dockera (który pozwoli prawdopodobnie zaoszczędzić #over9000 zasobów).
Więc how do I into docker? Mogę rzecz jasna zrobić podobnie, jak na libvirt/kvm -- obrazy całych "maszyn", z uruchomionymi usługami (np. maszyna z db, ldapem, nginxem, etherpadem, owncloudem; druga z db, nginxem, django i stroną, etc). Ale...
...mam wrażenie, że w świecie dockera jest inna praktyka: docker container na każdą usługę oddzielnie. Czyli np. kontenery fwioo/postgres, fwioo/ldap, fwioo/etherpad, fwioo/django, fwioo/itakdalej.
Czy moja intuicja jest słuszna? Jak zalecacie pójść dalej? Czasu mam mnóstwo: 3 dni. I jestem w podróży. ;)
2014-09-27 11:07 GMT+02:00 rysiek rysiek@hackerspace.pl:
Więc how do I into docker? Mogę rzecz jasna zrobić podobnie, jak na libvirt/kvm -- obrazy całych "maszyn", z uruchomionymi usługami (np. maszyna z db, ldapem, nginxem, etherpadem, owncloudem; druga z db, nginxem, django i stroną, etc). Ale...
...mam wrażenie, że w świecie dockera jest inna praktyka: docker container na każdą usługę oddzielnie. Czyli np. kontenery fwioo/postgres, fwioo/ldap, fwioo/etherpad, fwioo/django, fwioo/itakdalej.
Zdecydowanie jedna rzecz per container. Nginx, webowe usługi jak najbardziej. Jeśli chodzi o dane to jest trochę trudniej, bo trzeba się specjalnie troszczyć o perzystencję danych.
http://stackoverflow.com/questions/18496940/how-to-deal-with-persistent-stor...
Czy moja intuicja jest słuszna? Jak zalecacie pójść dalej? Czasu mam
mnóstwo: 3 dni. I jestem w podróży. ;)
Ja mam wręcz setup, jeden docker container na jedną małą wirtualkę, z
podmienianym contenerem w trakcie deployu.
Rysiu, na twoim miejscu, mimo że jestem ogolnie fanką dockera nie portowałabym na to strategicznej infrastruktury twojej fundacji :) i to w pośpiechu. Zrób sobie najpierw jakiś breakable toy project. Poczuj faktycznie jaka jest różnica między dockerami a maszynkami wirtualnymi. Na contenery praktycznie się nie sshujesz,
http://jpetazzo.github.io/2014/06/23/docker-ssh-considered-evil/
poza tym, raczej nie zmienia się kontenerów, ale buduje nowe z Dockerfile i zastępuje stare.
Joł,
Dnia sobota, 27 września 2014 11:10:53 Jakub Kramarz pisze:
Dlaczego nie gołe LXC?
Because easy, I guess. Paczałem na LXC, mierzyłem się z tym, potem odpaliłem dockera i #justworks. So.
Ale tak, mam małe wewnętrzne fuj, też wolałbym bardziej low-level pójść (maszyny libvirt/kvm też tworzyłem z palca).
Dnia sobota, 27 września 2014 11:28:11 Justyna Ilczuk pisze:
Zdecydowanie jedna rzecz per container. Nginx, webowe usługi jak najbardziej. Jeśli chodzi o dane to jest trochę trudniej, bo trzeba się specjalnie troszczyć o perzystencję danych.
K.
http://stackoverflow.com/questions/18496940/how-to-deal-with-persistent-stor age-e-g-databases-in-docker
Merci bardzo.
Czy moja intuicja jest słuszna? Jak zalecacie pójść dalej? Czasu mam mnóstwo: 3 dni. I jestem w podróży. ;)
Ja mam wręcz setup, jeden docker container na jedną małą wirtualkę, z podmienianym contenerem w trakcie deployu.
Intredasting.
Rysiu, na twoim miejscu, mimo że jestem ogolnie fanką dockera nie portowałabym na to strategicznej infrastruktury twojej fundacji :)
Because docker cośtam, czy because "najpierw się naucz"? Also, nie taka strategiczna, strona i usługi dodatkowe, na razie poczta wisi zupełnie gdzie indziej (acz docelowo też wyląduje tu).
i to w pośpiechu. Zrób sobie najpierw jakiś breakable toy project. Poczuj faktycznie jaka jest różnica między dockerami a maszynkami wirtualnymi. Na contenery praktycznie się nie sshujesz,
http://jpetazzo.github.io/2014/06/23/docker-ssh-considered-evil/
poza tym, raczej nie zmienia się kontenerów, ale buduje nowe z Dockerfile i zastępuje stare.
Intredasting bardzo. Dzięki.
Może faktycznie przerzucę na razie wirtualki sauté, i obczaję dockera z bliska. Tyle że jak przerzucę vmki sauté, nie będę miał potem motywacji i czasu na przerzucenie tego potem na dockera. Ech, życie.
rysiek:
Mogę rzecz jasna zrobić podobnie, jak na libvirt/kvm -- obrazy całych "maszyn", z uruchomionymi usługami (np. maszyna z db, ldapem, nginxem, etherpadem, owncloudem; druga z db, nginxem, django i stroną, etc). Ale...
...mam wrażenie, że w świecie dockera jest inna praktyka: docker container na każdą usługę oddzielnie. Czyli np. kontenery fwioo/postgres, fwioo/ldap, fwioo/etherpad, fwioo/django, fwioo/itakdalej.
Słuszne masz wrażenie.
3 dni. I jestem w podróży. ;)
Justyna dobrze radzi: pobaw się najpierw choć przez chwilę (ale: nie mówię, że zabawiać się nie masz jedną z tych maszyn do przeniesienia).
Może faktycznie przerzucę na razie wirtualki sauté, i obczaję dockera z bliska. Tyle że jak przerzucę vmki sauté, nie będę miał potem motywacji i czasu na przerzucenie tego potem na dockera. Ech, życie.
Mam podobnie – z tym, że odwrotnie: choć *wiem*, że poprawniej jest mieć wszystko w osobnych, odpowiednio polinkowanych między sobą kontenerach, to póki co przynajmniej część usług będę stawiał w postaci całego stosu w jednym kontenerze. Od pięknego „zrobię to poprawnie, szkoda, że będzie gotowe na święty nigdy” czasem lepsze jest pragmatyczne „do GitLaba i ownClouda są gotowe Dockerfile’e, postawię to w nich teraz, a jak już będzie działać to się zajmę wydłubywaniem z nich np. baz danych”.
Oczywiście flame’a „baza tylko żywcem na hoście” vs „wspólna baza w osobnym kontenerze” vs „każdej apce jej własna baza wewnątrz” też trzeba w odpowiednim czasie samemu przepracować. ;)
— Piotr Szotkowski
Cześć Rysiu :)
Więc how do I into docker? Mogę rzecz jasna zrobić podobnie, jak na
libvirt/kvm -- obrazy całych "maszyn", z uruchomionymi usługami (np. maszyna z db, ldapem, nginxem, etherpadem, owncloudem; druga z db, nginxem, django i stroną, etc). Ale...
Są i tacy co wszystko mają w jednym - http://phusion.github.io/baseimage-docker/
2014-09-28 1:17 GMT+02:00 Michał Falszewski mfalszewski@gmail.com:
Są i tacy co wszystko mają w jednym - http://phusion.github.io/baseimage-docker/
Teraz to mi mózg wysiadł; ten tekst idzie na przekór "best practices", z jakimi się spotkałem (zwłaszcza SSH w kontenerze), i ogólnie... WAT :D. Mam przez Ciebie co teraz kminić wieczorem.
Jacek Złydach, http://temporal.pr0.pl/devblog | http://esejepg.pl | http://hackerspace-krk.pl TRC - Bringing you tomorrow's solutions yesterday.
Dnia niedziela, 28 września 2014 14:07:00 TeMPOraL pisze:
2014-09-28 1:17 GMT+02:00 Michał Falszewski mfalszewski@gmail.com:
Są i tacy co wszystko mają w jednym - http://phusion.github.io/baseimage-docker/
Teraz to mi mózg wysiadł; ten tekst idzie na przekór "best practices", z jakimi się spotkałem (zwłaszcza SSH w kontenerze), i ogólnie... WAT :D. Mam przez Ciebie co teraz kminić wieczorem.
Damn you guys! DAMN YOU TO HELL! ;)
Ok, dockera odkładam sobie do warsztatów att, tymczasem przenoszę wirtualki.
On 2014-09-28 14:07, TeMPOraL wrote:
2014-09-28 1:17 GMT+02:00 Michał Falszewski mfalszewski@gmail.com:
Są i tacy co wszystko mają w jednym - http://phusion.github.io/baseimage-docker/ [1]
Teraz to mi mózg wysiadł; ten tekst idzie na przekór "best practices", z jakimi się spotkałem (zwłaszcza SSH w kontenerze), i ogólnie... WAT :D. Mam przez Ciebie co teraz kminić wieczorem.
Ten tekst robi sens na mój mały luniksowy móżdżek.
Jaram się jak las w minecrafcie tym tematem.
W sumie to Docker robi coś co ja chciałem mieć ponad 10 lat temu. Dzięki internecie.
On 01.10.2014 10:28, spin@hackerspace.pl wrote:
Jaram się jak las w minecrafcie tym tematem.
♩ ♪ ♫ ♬ ...Dziś prawdziwych pożarów już nie ma.., ♩ ♪ ♫ ♬
Teraz to te pożary takie se, z wersji na wersje osłabiali motzno rozprzestrzenianie sie ognia. Możesz łazić z zapałkami i podpalać losowe drzewa i najpewniej spłoną tylko one. Nie o taki meinkampf walczyłę
On 2014-10-01 14:33, Wiktor Przybylski wrote:
On 01.10.2014 10:28, spin@hackerspace.pl wrote:
Jaram się jak las w minecrafcie tym tematem.
♩ ♪ ♫ ♬ ...Dziś prawdziwych pożarów już nie ma.., ♩ ♪ ♫ ♬
Teraz to te pożary takie se, z wersji na wersje osłabiali motzno rozprzestrzenianie sie ognia. Możesz łazić z zapałkami i podpalać losowe drzewa i najpewniej spłoną tylko one. Nie o taki meinkampf walczyłę
Dlatego Minetest, szatany, tam las się jara jak rafineria ropy w getcie.
I jest pisany w C++ a nie w jakiejś, tfu, javie, in b4 php.
2014-10-01 17:37 GMT+02:00 Jakub Kramarz lenwe@lenwe.net:
Mogę, na koniec, zadać niewygodne pytanie dlaczego Docker?
Zadałeś to pytanie już na początku, i otrzymałeś wtedy odpowiedź:
8<---- Dnia sobota, 27 września 2014 11:10:53 Jakub Kramarz pisze:
Dlaczego nie gołe LXC?
Because easy, I guess. Paczałem na LXC, mierzyłem się z tym, potem odpaliłem dockera i #justworks. So. ----->8
Odpowiedź, pod którą podpisuję się wszystkimi rękoma. #justworks FTW.
Jacek Złydach, http://temporal.pr0.pl/devblog | http://esejepg.pl | http://hackerspace-krk.pl TRC - Bringing you tomorrow's solutions yesterday.
Ale LXC też just works!
Serdecznie pozdrawiam / Best regards,
Jakub Kramarz http://about.me/jkramarz
W dniu 1 października 2014 17:40 użytkownik TeMPOraL temporal.pl@gmail.com napisał:
2014-10-01 17:37 GMT+02:00 Jakub Kramarz lenwe@lenwe.net:
Mogę, na koniec, zadać niewygodne pytanie dlaczego Docker?
Zadałeś to pytanie już na początku, i otrzymałeś wtedy odpowiedź:
8<---- Dnia sobota, 27 września 2014 11:10:53 Jakub Kramarz pisze:
Dlaczego nie gołe LXC?
Because easy, I guess. Paczałem na LXC, mierzyłem się z tym, potem odpaliłem dockera i #justworks. So. ----->8
Odpowiedź, pod którą podpisuję się wszystkimi rękoma. #justworks FTW.
Jacek Złydach, http://temporal.pr0.pl/devblog | http://esejepg.pl | http://hackerspace-krk.pl TRC - Bringing you tomorrow's solutions yesterday.
General mailing list General@lists.hackerspace.pl https://lists.hackerspace.pl/mailman/listinfo/general
W dniu 01.10.2014 o 17:37, Jakub Kramarz pisze:
Mogę, na koniec, zadać niewygodne pytanie dlaczego Docker?
Ja bym się do tego pytania dołączył i je rozszerzył na "dlaczego nagle ludzie oszaleli na punkcie tego dockera?". Seriously, widziałem artykuły w wielu portalach netowych o tym, wychwalające że to nowa "najlepsza" metoda deploymentu softu na pingwina i (n+1 raz), że rpmy itp systemy paczek są złe i umrą, a wszystko pisane z perspektywy jakiegoś głupiego pseudo developera piszącego całe życie na windowsy i usiłującego przenieść tą mentalność do naszego systemu.
Koniec końców, żeby mi nikt nie zarzucił że hateuję bez powodu to postanowiłem to poznać. Poczytałem co na oficjalnej stronce piszą, wypróbowałem emulowane środowisko tutorialowe i dopiero wtedy zobaczyłem jak wielkie to zło może być. To powoduje instalowanie setek megabajtów lub i więcej kawałków obcych dystrybucji (głównie zło-buntu z tego co widziałem), bez jakiegokolwiek planu na security update tych pośrednich paczek i kompletnie poza managerem paczek natywnego distro, o potencjalnych problemach wynikających z takiej hybrydy nie wspomnę (i wewnętrznego fuj jakie normalne distro będzie miało po zainstalowaniu w nim fragmentów zło-buntu).
Zgodzę się, że rpmy i podobne tworzy się morderczo ciężko i że może być trochę zachodu, żeby zebrać wszystkie potrzebne libki na przestrzeni kilku dużych distro, które chce się supportować jeśli chce się po prostu zipa z binarką i libkami zrobić (doświadczyłem tego osobiście jak chciałem niedawno przygotować love2d do spakowania, żeby chodziło na suse, fedorze i debianie, jak wszystkie libki z suse miałem przygotowane to okazało się, że fedora potrzebuje z 10 dodatkowych więcej), ale ten cały docker to nie jest rozwiązanie, a co najwyżej taśma klejąca IMO.
Chętnie usłyszę argmenty przeciwko powyższej tezie, ale pod warunkiem, że nie będą podszyte windowsową mentalnością, że dev chce zrobić raz binarkę i jej nigdzie nie testować poza swoją własną maszyną.
Okej, poszukajmy tej tezy:
On 10/02/2014 08:35 AM, "Łukasz "Cyber Killer" Korpalski" wrote:
wszystko pisane z perspektywy jakiegoś głupiego pseudo developera piszącego całe życie na windowsy
Hm, czy Twoją teza jest to, że wszyscy ludzie którzy piszą o Dockerze są „pseudo developerami piszącymi całe życie na Windowsa”? Może, nie wiem, musiałbym poczytać ich biografie i CV. Poza tym, co to ma do rzeczy? Lunix gówno bo wszyscy czytają Phoronixa?
i usiłującego przenieść tą mentalność do naszego systemu.
Co ci zdrajcy rasy i brody stallmana to ja nawet nie. Jak oni śmią!
Koniec końców, żeby mi nikt nie zarzucił że hateuję bez powodu to postanowiłem to poznać. Poczytałem co na oficjalnej stronce piszą, wypróbowałem emulowane środowisko tutorialowe i dopiero wtedy zobaczyłem jak wielkie to zło może być. To powoduje instalowanie setek megabajtów lub i więcej kawałków obcych dystrybucji (głównie zło-buntu z tego co widziałem),
No. Masakra. Po prostu, powinni to deduplikować te dane, wtedy miałoby to sens! Wtedy raz pobrałbyś obraz „zło-buntu”, i nigdy więcej nie zajmowałby on miejsca przy każdym docker run! Oh wait... Robią to.
bez jakiegokolwiek planu na security update tych pośrednich paczek
No, walnięcie „RUN apt-get upgrade” w Dockerfile i redeploy taki trudny że wow.
potencjalnych problemach wynikających z takiej hybrydy nie wspomnę (i wewnętrznego fuj jakie normalne distro będzie miało po zainstalowaniu w nim fragmentów zło-buntu).
Potencjalnych problemów wynikających z dopuszczenia pedałów do życia w moim polskim państwie katolickim nie wspomnę (i wewnętrznego fuj jakie normalnie społeczeństwo będzie miało po zamieszkaniu w nim fragmentów degrengolady moralnej).
Ekhm, wait, what? Ja mam sobie swojego he he hipsterskiego Gentoo, na tym trochę dockerów i jeszcze nie widziałem żeby mój menadżer pakietów zmienił się apt-get. Twierdzisz, że jak będe miał na Gentoo Virtualboxa z Ubuntu to tez przez osmozę wszystko stanie mi się Ubuntu?
cały docker to nie jest rozwiązanie, a co najwyżej taśma klejąca IMO.
Tak, jak cały ekosystemik GNU/Linux teraz. Jak serio chcesz to naprawić (zaczynając od wyjebania idei obecnych menadżerów pakietów), zainteresuj się NixOSem.
Chętnie usłyszę argmenty przeciwko powyższej tezie, ale pod warunkiem, że nie będą podszyte windowsową mentalnością, że dev chce zrobić raz binarkę i jej nigdzie nie testować poza swoją własną maszyną.
Chyba nie jestem godzien. Moja Windowsa Mentalność zatruwa społeczeństwo open-source, lepiej pójdę się schować w kącie i konfigurować systemy klikając, a nie rekompilując kernel.
Poza tym, jaka teza?
Myślę, że wasz hejt na Dockera bierze się z niezrozumienia jednej bardzo istotnej kwestii - dlatego ją napiszę explicite już na samym początku - *Docker jest narzędziem stworzonym dla developerów, nie dla sysadminów*.
2014-10-02 8:35 GMT+02:00 "Łukasz "Cyber Killer" Korpalski" < cyberkiller8@gmail.com>:
Ja bym się do tego pytania dołączył i je rozszerzył na "dlaczego nagle ludzie oszaleli na punkcie tego dockera?". Seriously, widziałem artykuły w wielu portalach netowych o tym, wychwalające że to nowa "najlepsza" metoda deploymentu softu na pingwina i (n+1 raz), że rpmy itp systemy paczek są złe i umrą, a wszystko pisane z perspektywy jakiegoś głupiego pseudo developera piszącego całe życie na windowsy i usiłującego przenieść tą mentalność do naszego systemu.
Artykuły mają tendencję do hiperbolizowania, ale z drugiej strony, Ty teraz też hiperbolizujesz i strasznie hate'ujesz na windowsowych developerów. Z racji dorastania jako takowy grzecznie poinformuję, że to są developerzy tacy sami jak inni i mają więcej wspólnego z developerami *nixów, niż któryś z nich z użytkownikami systemu, na który developują.
Koniec końców, żeby mi nikt nie zarzucił że hateuję bez powodu to postanowiłem to poznać. Poczytałem co na oficjalnej stronce piszą, wypróbowałem emulowane środowisko tutorialowe i dopiero wtedy zobaczyłem jak wielkie to zło może być. To powoduje instalowanie setek megabajtów lub i więcej kawałków obcych dystrybucji (głównie zło-buntu z tego co widziałem), bez jakiegokolwiek planu na security update tych pośrednich paczek i kompletnie poza managerem paczek natywnego distro, o potencjalnych problemach wynikających z takiej hybrydy nie wspomnę (i wewnętrznego fuj jakie normalne distro będzie miało po zainstalowaniu w nim fragmentów zło-buntu).
1. "Setki megabajtów lub więcej" - a w zasadzie tylko setki megabajtów, bo bazowy image Ubuntu waży jakieś 60 - instalują się tylko raz. Docker commituje każdą instrukcję w Dockerfile i trzyma różnice filesystemu, więc dociągane są tylko delty w miejscach, w których coś w konfiguracji zmienisz. 2. Jak kompletnie poza package managerami skoro używasz package managera do instalacji tych paczek? 3. Cała idea izolacji systemów od siebie polega na tym, że nie instalujesz "fragmentów zło-buntu" w "normalnym distro".
Zgodzę się, że rpmy i podobne tworzy się morderczo ciężko i że może być trochę zachodu, żeby zebrać wszystkie potrzebne libki na przestrzeni kilku dużych distro, które chce się supportować jeśli chce się po prostu zipa z binarką i libkami zrobić (doświadczyłem tego osobiście jak chciałem niedawno przygotować love2d do spakowania, żeby chodziło na suse, fedorze i debianie, jak wszystkie libki z suse miałem przygotowane to okazało się, że fedora potrzebuje z 10 dodatkowych więcej), ale ten cały docker to nie jest rozwiązanie, a co najwyżej taśma klejąca IMO.
Oh well. Widzisz, a na Windowsie wystarczy tylko zbundlować brakujące
DLLki and you can call it a day :P.
Chętnie usłyszę argmenty przeciwko powyższej tezie, ale pod warunkiem,
że nie będą podszyte windowsową mentalnością, że dev chce zrobić raz binarkę i jej nigdzie nie testować poza swoją własną maszyną.
To, co Ty nazywasz "Windowsową mentalnością" developer nazwie normalną pracą i zdroworozsądkowym podejściem.
Wracając więc do mojej głównej myśli - Docker jest stworzony z myślą o developerach. Innym podobnym narzędziem jest Vagrant. Vagrant rozwiązuje problem "chcemy, żeby developerzy mogli pracować nad systemem lokalnie, i żeby u każdego developera projekt działał out of the box, identycznie jak na serwerze testowym i produkcyjnym". Docker jest rozwiązaniem problemu "maszyny wirtualne są za ciężkie", a jego część internetowa rozwiązuje problem "wszyscy i tak używają z grubsza takich samych konfiguracji bazowych, to po co wszyscy mamy pisać od nowa te same configi, żeby wgrać głupiego Apacha?".
Ogólnie Vagrant i Docker zajmują się eliminowaniem sysadminki (czy jak teraz hipstery mawiają, devopsu).
Jeśli sysadmin będzie brał 4zł za godzinę, to bardzo chętnie zrezygnuję z Dockera i Vagranta, i przejdę na LXC, super-zarządzane, Stallman-approved Archgetnoo - ale nie zamierzam tego dotykać nawet dwumetrowym kijem. Sysadmin jest dla mnie mięsną implementacją Dockera - i jak będzie kosztował tyle co piwo, to bardzo chętnie zrezygnuję i z Ubuntu na maszynie, na której pracuję. Ale póki co mam ciekawsze rzeczy do roboty niż stałe babranie się w internalsach Linuxa i wydłużanie swojego e-penisa drogą rekompilacji jąder. Jestem programistą, nie sysadminem.
Swoją drogą, piszesz o zło-buntu. Ja wiem, że hate na Ubuntu jest świetnym *applause light* i zapewne dostaniesz jeszcze brawa, jakie z tego tytułu Ci przysługują, ale spójrzmy na kilka ciekawostek:
- Ubuntu jest nr 1 systemem dla normalnego usera jako alternatywa Windowsa, - Ubuntu zdaje się być nr 1 systemem dla (web)developerów jako alternatywa dla Maca, - Razem z Debianem są standardową odpowiedzią na pytanie "co postawić na VPSie, żeby deployować webappkę", - Jest tak unsecurer wielkim złem, że był chyba jedynym (obok Debiana) systemem, co do którego wszyscy byli absolutnie, pozytywnie pewni, że jest odporny na ShellShock.
Znów, nie jest to dobry system dla sysadmina / osób lubiących OS porn, ale jest idealny dla zwykłych użytkowników i dla developerów.
BTW. z tej bardziej "socjalnej" części Dockera wyrósł Sandstorm - https://sandstorm.io/ - polecam obczaić; jest to pierwsze sensowne rozwiązanie na problem Molocha zapędzającego wszystkich do chmury.
Jacek Złydach, http://temporal.pr0.pl/devblog | http://esejepg.pl | http://hackerspace-krk.pl TRC - Bringing you tomorrow's solutions yesterday.
Hej,
pragne zaznaczyc ze docker to nie jest silver bullet. Nie jest narzedziem, ktore rozwiaze wszystkie problemy wszystkich. Jest jednak bardzo fajne i uzyteczne.
Problemem z opsami jest to, ze czesto dzialaja za wolno w stosunku do developmentu. Czesto tez developerow i sysadminow interesuja rozne rzeczy. Docker jest app and developer-centric. Chociaz i sysadminom generuje duze korzysci, poniewaz setup jest bardzo uproszczony i oferuje taki sam interfejs dla roznych rodzaju aplikacji. Nie interesuje cie to, czy to java, python, czy moze golang :).
Typowym usecasem kontenerow dockerowych jest continuous delivery - kontenery buduja sie szybko i zyja krotko. W ciagu dnia moge zdeployowac bez wiekszego problemu kilkadziesiat roznych wersji obrazow dockerowych. It's fast and cheap. Szczegolnie jesli z dockerowym cachem buduja sie ulamek sekundy - bez cacha ~10min bo wszystkie kompilacje i zaleznosci.
Kazdy use case jest inny.
Zapraszam dzisiaj na talka o dockerze i na QA po talku.
Re: hate na dockera.
Masz deadline na robotę 6 godzin. Jebł ci system na stacji roboczej.
Teraz kurwa migruj dane.
Rule of thumb jest taki że jeśli umiesz i możesz zrobić to szybko, to prawdopodobnie nie umiesz zrobić tej rzeczy na którą był deadline - vide loga i opracowanie graficzne projektów GNU.
Z osób które potrafią jedno i drugie to znam antoszkę chyba tylko, i długo długo nic.
W dniu 02.10.2014 o 11:34, TeMPOraL pisze:
Myślę, że wasz hejt na Dockera bierze się z niezrozumienia jednej bardzo istotnej kwestii - dlatego ją napiszę explicite już na samym początku - *Docker jest narzędziem stworzonym dla developerów, nie dla sysadminów*.
(...)
Wracając więc do mojej głównej myśli - Docker jest stworzony z myślą o developerach. Innym podobnym narzędziem jest Vagrant. Vagrant rozwiązuje problem "chcemy, żeby developerzy mogli pracować nad systemem lokalnie, i żeby u każdego developera projekt działał out of the box, identycznie jak na serwerze testowym i produkcyjnym". Docker jest rozwiązaniem problemu "maszyny wirtualne są za ciężkie", a jego część internetowa rozwiązuje problem "wszyscy i tak używają z grubsza takich samych konfiguracji bazowych, to po co wszyscy mamy pisać od nowa te same configi, żeby wgrać głupiego Apacha?".
Nareszcie, to jest rozsądny argument. Jako tool dla developera to faktycznie ma jakieś zastosowanie, co tym bardziej utwierdza mnie w przekonaniu, że ja sam nie chcę tego kijem dotykać. Jednak myślę że wieszczenie upadku klasycznych systemów paczek w kontekście tego, jest co najmniej nieporozumieniem. Jeszcze większym nieporozumieniem jest używanie takich rzeczy jak Docker (i własne systemy paczek od pythonów, ruby i reszty) na produkcji, gdzie przychodzi admin, chce machnąć update, a tu się okazuje że zamiast 1 toola do upadate'owania jest ich 5 i każdy inny.
Reasumując - developer niechaj używa co mu się podoba do developowania, jego wola w końcu, ale łapy precz od stosowania tego samego podejścia u usera końcowego lub na serwerze.
Ogólnie Vagrant i Docker zajmują się eliminowaniem sysadminki (czy jak teraz hipstery mawiają, devopsu).
Jeśli sysadmin będzie brał 4zł za godzinę, to bardzo chętnie zrezygnuję z Dockera i Vagranta, i przejdę na LXC, super-zarządzane, Stallman-approved Archgetnoo - ale nie zamierzam tego dotykać nawet dwumetrowym kijem. Sysadmin jest dla mnie mięsną implementacją Dockera - i jak będzie kosztował tyle co piwo, to bardzo chętnie zrezygnuję i z Ubuntu na maszynie, na której pracuję. Ale póki co mam ciekawsze rzeczy do roboty niż stałe babranie się w internalsach Linuxa i wydłużanie swojego e-penisa drogą rekompilacji jąder. Jestem programistą, nie sysadminem.
Ja jestem sysadminem, ale też jestem daleki od grzebania w bebechach systemu, bo to nie jest droga do stabilnej pracy. Każdy element który odbiega od standardu jest tykającą bombą, która czeka żeby wysłać maszynę w kosmos. Niemniej deployment appki nie jest jakimś rocket science, skoro ja potrafię moje skrypty czy nawet gry (bo piszę hobbystycznie gry) przygotować do pracy na co najmniej kilku dużych distrach, które pilnują standardów, to każdy dev tym bardziej powinien potrafić.
Swoją drogą, piszesz o zło-buntu. Ja wiem, że hate na Ubuntu jest świetnym /applause light/ i zapewne dostaniesz jeszcze brawa, jakie z tego tytułu Ci przysługują, ale spójrzmy na kilka ciekawostek:
(...)
Znów, nie jest to dobry system dla sysadmina / osób lubiących OS porn, ale jest idealny dla zwykłych użytkowników i dla developerów.
Łaskawie dla reszty czytelników tej listy odpuszczę ten flame bait :-). Jedno co tylko chciałbym powiedzieć o Ubuntu, to że kiedyś to było dobre distro. Trzymało (lub przynajmniej próbowało się trzymać) standardów, współpracowało ze społecznością, itd. Sam wtedy też go używałem, a do dzisiaj jestem zdania Bazaar jest najfajniejszym vcs jaki jest. No ale później to poszło w las w imię kasy i teraz ubu robi wszystko żeby być na siłę inne od reszty. To, w połączeniu z postrzeganą popularnością (licząc każde distro osobno może Ubu ma lekką przewagę w popularności, chociaż samo nie ma ponad 50%, ale jeśli liczyć grupami, np wszystkie zgodne z LSB razem to widać kompletnie coś innego) jaką widzą duzi producenci powoli doprowadza do tworzenia softu który działa na Ubuntu, a nie działa na reszcie standardowych (LSB) dystrybucji (na razie jeszcze da się przekonwertować ubuntowe deby czy wygrzebać z nich binarki, ale jak długo?). To jest poważny problem dla nas wszystkich, a przyjaznych userowi distro jest wiele innych również, pierwsze z brzegu poleciłbym OpenSUSE czy Fedorę.
2014-10-02 14:04 GMT+02:00 "Łukasz "Cyber Killer" Korpalski" cyberkiller8@gmail.com:
ale jeśli liczyć grupami, np wszystkie zgodne z LSB razem
Parskłem z dwupiardem i pomlaskiem. http://udrepper.livejournal.com/8511.html
W dniu 02.10.2014 o 14:21, Robert Sebastian Gerus pisze:
2014-10-02 14:04 GMT+02:00 "Łukasz "Cyber Killer" Korpalski" cyberkiller8@gmail.com:
ale jeśli liczyć grupami, np wszystkie zgodne z LSB razem
Parskłem z dwupiardem i pomlaskiem. http://udrepper.livejournal.com/8511.html
Miłego parskania, a ja mam w pomieszczeniu obok team embedded developerów, którzy pół roku temu przyszli do mnie po pomoc jak mieli pisać drivery do kernela Linuxowego dla klienta na 5 różnych distro. Pokazałem im LSB i powiedziałem, żeby kodzili wg tego, później byli gotowi całować mnie po stopach, bo napisali raz i działało wszędzie (poza Ubuntu, ale o tym już pisałem w innym mailu).
Ja rozumiem że to co mówię czasem brzmi niewiarygodnie (no i faktycznie nie zawsze mam rację), ale jestem wyznawcą tego co sprawdzone i działa. Dla mnie to skutkuje.
On Thursday 02 of October 2014 14:04:56 Łukasz "Cyber Killer" Korpalski wrote:
Jeszcze większym nieporozumieniem jest używanie takich rzeczy jak Docker (i własne systemy paczek od pythonów, ruby i reszty) na produkcji, gdzie przychodzi admin, chce machnąć update, a tu się okazuje że zamiast 1 toola do upadate'owania jest ich 5 i każdy inny.
Nie wiem jakich ty apek używałeś na serwerach, ale z mojego doświadczenia właśnie *dobrze zrobiony* package manager dla pythona czy rubiego, a nodejs'a to już na pewno, jes wręcz lepszym rozwiązaniem bo często admin bardzo nie powinien dotykać paczek które apki używają. Takie jaja, że coś wymaga libki w wersji 1.5.2, a z wersją 1.6.0 już nie działa to niestety dość częsta sytuacja. Także w ten sposób admin może sobie tylko dorzucić roboty z przywracaniem działającego środowiska które developer sobie wymyślił. Dodatkowo pokaż mi distro które na bieżąco aktualizuje wszystkie libki do tych języków (pomijam gentoo czy arch'a które są rolling release). Z mojego doświadczenia pythonowski virtualenv+pip to jest zbawienie dla admina, a nie problem bo nie musi się przejmować tym co devowie akurat sobie dzisiaj ubzdurali.
Ja jestem sysadminem, ale też jestem daleki od grzebania w bebechach systemu, bo to nie jest droga do stabilnej pracy.
Zdefiniujmy najpierw bebechy systemu. Dla mnie sysctl to są bebechy, a to wręcz trzeba dopasować na poważnym systemie produkcyjnym.
Guise, czy kontenery Dockera można odpalać na, dajmy na to, konkretnych procach klastra?
Bo ja tak trochę czekam na te AMDki z ARMami, a poza tym uważam że kilka tanich jednostek obliczeniowych jako support dla głównego CPU/GPU jest zajebiste bo: -resource-saving -power-saving -easier crash management -modularity
Jak czytam o Dockerze to jest takie trochę "oh this is hardware-level exploitable", więc teraz pytanie - is it much?
2014-10-01 18:51 GMT+02:00 spin@hackerspace.pl:
Guise, czy kontenery Dockera można odpalać na, dajmy na to, konkretnych procach klastra?
LXC się na, wystarczy ustawić kontenerowi cpuset. Czy w Dockerze się da, nie mam pojęcia, ale nie ma nic, co by to uniemożliwiało.
Jak czytam o Dockerze to jest takie trochę "oh this is hardware-level exploitable", więc teraz pytanie - is it much?
Nie, jest to słabe i soft. To nie są maszyny wirtualne i to nie jest bezpieczne z założenia. Te kontenery nie są szczególnie mocno od siebie odseparowane, ich własności zależą od bardzo dziurawego jądra Linuxa. (Nie mówiąc o tym, że współdzielą VFS, a ukrywanie informacji per kontener jest dość nahaczone w namespace.)
Główny plus Dockera to wygoda. Jeśli uda im się przenieść tę wygodę na zestawianie maszyn wirtualnych, z frontcache i deduplikacją pamięci z np. Xen jako hypervisorem, z deduplikacją systemu plików, to będzie fajnie.
R.