Da, uite, acum la rece să încerc să pun problema altfel. Eu am un oarecare interes pentru sistemele embeded, chestie care nu e deloc depășită ci chiar devine din ce în ce mai la modă. Referințele la slackware le fac mai mult ca să epatez burghezii; el a evoluat fix invers: încercând să fie cât mai clean a devenit irelevant pentru sistemele normale.

Docker e oarecum în aceeași găleată, chiar dacă e "embeded" software, nu hardware.

De asta sunt un pic debusolat de ușurința cu care se renunță (de tot) la un init minimal pentru unul maximal. Că evident că în multe scenarii systemd are avantaje și până la urmă dacă se poate de ce nu.

Asta înseamnă că la un moment dat o distribuție care se vrea universală nu prea mai e ce trebuie pentru o întreagă categorie de device-uri (ca să mă autoconving că nu vorbeam chiar prostii am verificat în changelog-ul systemd și chiar există un patch prin 2014 referitor la "tratarea docker ca un tip special de container").

Eu am preferat să îmi derivez niște imagini din whezzy și voiam să le "upgradez" la jessie dar a fost un interval în care nu exista docker bazat pe jessie. Acum văd că dezvoltatorii au devenit mai flexibili, pentru că nginx din bookworm nu pare că mai depinde, cel puțin nu direct, de systemd. Dar deduc că și tu folosești alpine, eu am ajuns la el pentru că atunci nu aveam alternativă și în general fără momentul ăla de talibăneală probabil că nici nu s-ar fi auzit de el...

Te asigur că tot ce am făcut era complet "canonic" și că am studiat destul de mult docker la momentul respectiv. Doar că am optat pentru niște pachete pe care le știam stable, nu pentru nginx/latest .

Mă gândesc că vreo zece ani tot o să mai fim cât de cât relevanți, măcar să mai reparăm din trăznăile pe care le fac ăștia micii din prea mult entuziasm... doar că hai să zicem că aria mea de interes e un pic diferită. Mă gândeam că anumite lucruri ar fi putut coexista într-o lume "mai bună și mai dreaptă", cum zicea un dictator din tinerețea mea. KISS e încă valid și va mai fi probabil și în următorul mileniu, chiar dacă evident, în afară de a ține lucrurile simple trebuie să avem în vedere să ne rezolve și problemele, ceea ce, suntem cu toții de acord, ar putea să fie mai complicat decât ne dorim.

Ce să zic, pe următoarea vineri când mă mai enervez :)

On 3/23/24 09:24, Dumitru Moldovan via RLUG wrote:
Mihai,

Ca de la un „linuxist bătrân” la altul, ca să citez un clasic al acestei liste de discuții…  Petru a încercat în mod repetat, cu o răbdare pe care io personal nu o mai am, să te ajute să înțelegi unde greșești.  Cu cât se dezvoltă discuția însă, cu atât ne dezvălui mai multe niveluri unde se întâmplă aceste greșeli.

Acuma mno, toți avem un ego care ne orbește și ne împiedică să ne vedem propriile limitări.  Dar, vorba aia, până la urmă ce vrem să ajungem la vârsta a treia?  Niște moșnegi oțetiți de propriile frustrări, pe care nici măcar nu le prea înțelegem?  Sau, precum un vin de calitate, ceva încă recomandabil?

Dacă duci dorul vechii configurări de rețea din Slackware, îți recomand OpenBSD, care a dus această simplificare până la concluzia ei logică, o soluție elegantă ce unifică inclusiv configurările de rețea fără fir. Însă de vrem să supraviețuim dpdv comercial în actualul context, trebuie să înțelegem care-i treaba cu Docker, de exemplu.  Abia apoi ne putem avânta în lamentări mai la obiect privind „the old ways”…

On 3/23/24 07:28, Mihai Badici via RLUG wrote:
Neața :)

Da, cumva ne apropiem, după cum ziceam vorbim de un proiect de prin 2014-16 deci nu îmi mai amintesc nici eu bine.

Tu folosești nginx:latest care la rândul lui e și el derivat din ceva ( nu de către tine, de către alții, dar e) . Dacă te uiți la ce am dat eu, imaginile mele erau derivate dintr-o imagine de wheezy.

Acum poate oi fi greșit eu la acel moment, fiecare imagine era cu From: debian/wheezy și apt-install  aplicația mea. Aș fi putut probabil să le iau direct cu from: nginx:latest și să ignor că unul din containere ar putea fi bazat pe debian și altul pe alpine; eu așa m-am gândit, că e mai bine ca toate imaginile să aibă aceeași bază și pentru că debian foloseam atunci, să fie debian.

Cum docker e bazat pe layere succesive m-am gândit că așa e cel mai economic și mai ușor de întreținut.

Sigur că tu dacă o iei din nginx:latest pasezi problema la altul, ceea ce e bine pentru tine dar nu schimbă lucrurile. Și nginx:latest e probabil derivat tot din bookworm:latest, doar că nu de tine, și după from probabil tot apt-get install nginx are (eu am refuzat moda de a compila aplicația în Dockerfile, deși venind dinsprte slackware s-ar zice că e contraintuitiv :) )

Mă rog, nu are importanță, era doar o problemă de demult pe care am adus-o în discuție ca să ilustrez o tendință.

Aparent, proiectele de it sunt doar de două feluri: alea subfinanțate, unde se improvizează ca să meargă, și alea suprafinanțate, în care oamenii trebuie să își justifice salariul și adaugă layere succesive de complexitate la problemele simple. Cale de mijloc nu mai e :)


On 3/23/24 00:23, Petru Rațiu via RLUG wrote:
On Sat, Mar 23, 2024 at 12:09 AM Mihai Badici via RLUG <rlug@lists.lug.ro>
wrote:

Tu o ții pe a ta și ai tras niște concluzii greșite.

Eu builduiam o imagine locală - de exemplu porneam de la un build de
nginx , îi aplicam ceva scripturi de customizare și obțineam o imagine
locală, să zicem nginx-mihai.

Pe aia încercam să o țin upgradată și toate containerele le derivam din
ea. Până aici cred că ești de acord. În felul ăsta nici nu descărcam
decât o dată, nu că ar mai conta.

Într-adevăr nu îți trebuie systemd în container. Dar pe debian toate
serviciile, inclusiv nginx depindeau de systemd. Deci dacă vrei să
instalezi un jessie sau mai nou oricum trebuie să instalezi și systemd.


Vezi, aici m-ai pierdut. Pentru ca daca vrei nginx, folosesti nginx:latest
sau whatever. Care poate avea intern debian sau nu (default are, dar nu
prea conteaza), dar nu depinde in nici un fel de systemd (daca imi arati
unde scrie systemd la
https://github.com/nginxinc/docker-nginx/blob/1f227619c1f1baa0bed8bed844ea614437ff14fb/mainline/debian/Dockerfile
. il mananc).

Faptul ca o tot dai cu pachetele din Debian si dependinta lor de systemd imi spune ca ai incercat sa pui full distro in container, si sigur-sigur
faci ceva foarte in raspar daca ajungi sa faci de-astea.

Aia cu "imaginea aia incercam sa o tin upgradata" e semn ca faceai ceva gen golden image de VM, si efectiv la containere nu vrei sa faci asta decat in
anumite situatii foarte particulare. Daca vrei sa ai containere
maintainable, vrei sa tii un layer cat mai subtire de customizare pe
imagini facute de upstream (preferabil chiar de catre maintainerii
softurilor respective) si sa faci periodic rebuild cu acelasi scripturi ale
tale bazate pe latest security updates.

Si ma rog, treaba ta, faci ce vrei, dar nu veni sa bombani ca ale naibii
iphoanele astea noi, bati doua cuie cu ele si trebuie schimbate.


_______________________________________________
RLUG mailing list
RLUG@lists.lug.ro
http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro


_______________________________________________
RLUG mailing list
RLUG@lists.lug.ro
http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro

_______________________________________________
RLUG mailing list
RLUG@lists.lug.ro
http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro

Raspunde prin e-mail lui