Wpis z mikrobloga

Mam debiana w dockerze, jest on komponentem wykonującym jakąś pracę w przetwarzaniu danych, muszę napisać żeby podczas uruchomienia sprawdził czy jest połączenie z bazą danych, oraz czy "następnik" do którego będę strumieniował dane jest gotowy do nasłuchu, dochodzi też bycie konsumentem kafka, a to wszystko w jednym kontenerze, kilka programów które muszą się dogadać.
Jak to elegancko zrobić?

W skrócie: Debian; jeden kontener; 3 programy; każdy w innej technologii, robi coś innego, 2 z nich muszą działać jednocześnie, komunikują się HTTP

No chyba że wywalić wszyskto co osobnych service i docker compose.

No nie wiem, jakie są praktyki? #docker #kubernetes #linux #programista15k #python #java #software
  • 15
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@pyroxar: praktyki są takie, że paradygmatem dockera jest to, że jeden kontener to jeden program.

Jak to nie musi być w dockerze (bo nie potrzebujesz docker buildów i wersjonowania obrazów) tylko po prostu ma być skonteryzowane to w ogóle bym zszedł z dockera i postawił do na nspawn albo lxc.
  • Odpowiedz
Jak to nie musi być w dockerze (bo nie potrzebujesz docker buildów i wersjonowania obrazów) tylko po prostu ma być skonteryzowane to w ogóle bym zszedł z dockera i postawił do na nspawn albo lxc.


@Kryspin013: użycie technologii których nikt nie zna zamiast najbardziej powszechnych na świecie to zawsze plus
  • Odpowiedz
@Kryspin013: użycie technologii których nikt nie zna zamiast najbardziej powszechnych na świecie to zawsze plus


@Boska_Klaudia: Używanie technologii na siłę przeznaczonych kompletnie do czego innego, niezgodnie z ich paradygmatami i tylko dlatego, ze są popularne też.
  • Odpowiedz
@Kryspin013: tylko że to nieprawda - docker jest dokładnie od tego co OP chce zrobić.


@Boska_Klaudia: No nie, nie wiemy co dokładnie OP chce zrobić dlatego w moim pierwszym komentarzu mu napisałem, że jeśli docker to paradygmat, że "jeden program - jeden kontener".

Natomiast jeśli OP chce sobie zwirtualizować konkretnie OS w kontenerze to docker się kompletnie do tego nie nadaje.

Do tego stosowanie dockera do postawienia jednorazowej
  • Odpowiedz
  • 1
@pyroxar Napisz sobie poprostu skrypt bashowy który robi te rzeczy. Jeżeli ma coś działać w tle to poprostu uruchom to w tle z skryptu.

Masz w tagach k8s, można więc zrobić poda co ma parę obrazów ale to już trochę przesada moim zdaniem.
  • Odpowiedz
@pyroxar: jak osadzasz to w jakimś k8s, to możesz zrobić initcontainer ze skryptem, który to wszystko najpierw posprawdza, albo jakiś pod (lub kontener) kontrolny. Jak sam docker, to chyba pozostaje mięcho z ww. czyli skrypt np. bash obok.

Jak ktoś doradza Ci "wyjście" z konteneryzacji na rzecz jakiegoś guana jak wyżej, to nawet nie czytaj ( ͡° ͜ʖ ͡°) chyba że chodzi o zamianę docker na
  • Odpowiedz
@Kryspin013: uuu zaskoczyłeś mnie tym lxc. Chyba nie słyszałem, albo zapomniałem o tym. To jest dość stabilne narzędzie obecnie?


@jar-mitryn: no to jest stabilne chyba od ponad 10 lat xD

Jest jeszcze lepsze lxd które chyba w sumie jest nakładką na lxc, ale Canonical w----ł to w snapa kilka lat temu więc j---ć ich.
  • Odpowiedz
@Kryspin013: no własnie trafiłem na informację że docker zrezygnował z opierania sie na lxc ze względu na stabilność, ale wiele lat temu. Stąd moje pytanie :)


@jar-mitryn: a komerycjne projekty jak kubernetes czy openshift porzuciły dockera - możemy długo tak wymieniać.

Z LXC korzystają dostawcy VPS-ów np IBM czy Oracle, ale też znajdziesz go np w proxmoxie.

Jak pisałem wyżej paradygmat w lxc i dockerze są zupełnie inne.
  • Odpowiedz