• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    ALMADDocker a kontejnery
    GIOMIKY
    GIOMIKY --- ---
    Tak trochu se zpozdenim, ale preci jenom jsem naucil pouivat Dockerfile. To je moment, kde zacina opravdova legrce. ;]
    GIOMIKY
    GIOMIKY --- ---
    obrazek je pouze ilustrativni ... ale prochazim deziluzi

    GIOMIKY
    GIOMIKY --- ---
    Tak po par tydnech pouzivani to furt neni ono. Asi se s tim nikdy nenaucim. Furt mi to vytvari z threadu zombie, jak jsem rikal, tak s firewallem si to moc nerozumi, porad opakuji prune container a mam neodbytny pocit i na opravdovem zeleze, ze s prikazem exit o vsechno prijdu. Chapu, ze tohle je budoucnost, ale na svoje blbiny zatim na chvili prechazim zpet na qemu.... ale na vytvareni postupu bezva
    MUXX
    MUXX --- ---
    Zkontrolujte si co vam doma zere elektrinu!
    https://twitter.com/datamattsson/status/1420394628440805377?s=20

    GIOMIKY
    GIOMIKY --- ---
    HOUMLES: aha, ok, diky, to bude ono
    HOUMLES
    HOUMLES --- ---
    GIOMIKY: docker a iptables je hell, protoze docker default prevezme kontrolu nad iptables a dela si tam vlastni chainy, forwardy apod.
    mas dve moznosti:
    nechat mu ty iptables a prizpusobit se jeho chainum
    vypnout spravu iptables dockerem, ale pak si musis resit vsecky forwardy sam (a neni to jenom o forwardech)
    GIOMIKY
    GIOMIKY --- ---
    jj... upravuju to v hostovi
    ADMIX
    ADMIX --- ---
    GIOMIKY: uz to ze sahas na docker iptables rucne znamena ze to delas blbe :))
    GIOMIKY
    GIOMIKY --- ---
    MUXX: Uprimne uz jsem si zabuldil dost a tednbych to taky rad pouzival. Ale asi neco delam blbe. Hlavne mi zlobi sit. Kdyz upravim iptables pravidlo, tak musim provest restart docker procesu, aby mi zase zacalo kontejneru fungovat tcp.
    MUXX
    MUXX --- ---
    MUXX: Misto docker commit mas mit dockerfile a delat “docker build”
    MUXX
    MUXX --- ---
    GIOMIKY: Ty s tim porad pracujes jak s virtualkou. S tim musis pracovat jako s gitem. Zkus se na ten tvuj image podivat pres https://github.com/wagoodman/dive . Treba ti ty vrstvy zacnou davat smysl.
    Kdyz udelas mv neco na volume, tak se ti to nemuze zmensit. Jenom se v tom commitu oznaci soubory za smazane/schovane. Z gitu taky nic nesmazes. Proste pokazde kdyz udelas “docker commit”, tak to znamena(az na vyjimky), zes docker porad nepochopil.
    RUDOLF
    RUDOLF --- ---
    GIOMIKY: Jj, to je běžný, že si člověk projde několik slepých uliček, než zjistí že měl na začátku chybnou představu a pak na to jde lépe.
    GIOMIKY
    GIOMIKY --- ---
    jj, mate pravdu,... kdybych vedel, ze mam namountovat fs, tak bych neinstaloval do kontejneru, kdybych vedel, ze rm neodstrani soubory, tak bych nedelal dump & pump, kdybych vedel, jak to naskriptovat, tak bych nemusel mit kontejner, ktery se mi nechce instalovat znova... mozms je nacsse zacit znovu od zacatku ;]
    HVJ3R
    HVJ3R --- ---
    GIOMIKY: Soubor izolovanych procesu (cgroups). A verzovany fs neni presne. Je to X overlayovanych fs. Proto taky nedava moc smysl je verzovat, natoz commitovat (nebo ty commitujes bindata DB?). Spravny postup je jak rika
    INDIAN plus pripadne multistage builds, to je velmi uzitecna vec, zde: RUDOLF. Ty k tomu pristupujes tak, jak nemas a tak te to logicky sere. Ale sroubovak nemuze za to, ze hrebik nema drazku.
    GIOMIKY
    GIOMIKY --- ---
    MARTEN: na host fs mam ted datove soubory database... v kontejneru mi bezi procesy... btw: jak jsem zjistil, tak docker je vlastne jenom soubor procesu bezici nad verzovanym fs
    INDIAN: no ted uz na to doufam nebudu muset sahnout... je pravda, ze kdyz zobrazuje docker images velikost, tak to je souhrna za vsechny rozdily od puvodniho image... takze kdyz ukaz 500 MB a puvodni image ma 300 MB, tak vlastne velikost toho 2. image je 200 MB... mozna se to da nekde docist, ale takhle na prvni pohled to neni uplne zrejme...
    INDIAN
    INDIAN --- ---
    GIOMIKY: kasli na dump a export/import ... pracuj pouze s Dockerfile s image postavenym na OS (nejlip alpine), data+nastaveni mej namountovany pres volume
    MARTEN
    MARTEN --- ---
    GIOMIKY: Jenom pises ze si presunul na hosta. To jsou nejake vygenerovane soubory jako treba data databaze? Kdyz to das na noveho hosta a nebude mit ty soubory, bude to fungovat?
    GIOMIKY
    GIOMIKY --- ---
    Dekuji moc,... mne na to zabralo nasledujici (jeste, nez jsem si precetl tvuj prispevek)...
    1) spustit docker kontejner z image
    2) konterjner zastavit (stop)
    3) docker export -o dump.tar <kontejner>
    4) kontejner prune (neni asi zapotrebi)
    5) docker import dump.tar repo:tag
    ... tim jsem z 500 MB udelal 300 MB ... zmensil o ty soubory, ktery jsem prenesl na hosta...
    a primountoval pomoci -v
    RUDOLF
    RUDOLF --- ---
    GIOMIKY: A tohle je rozhodně užitečné. V jednom image si připravíš build tools a vybuilduješ, výstupnou binárku si pak narveš do čistého image. Např.

    Use multi-stage builds | Docker Documentation
    https://docs.docker.com/develop/develop-images/multistage-build/
    RUDOLF
    RUDOLF --- ---
    GIOMIKY: nemůžeš odstranit data z vrstvy, kterou si už přikryl jinou vsrtvou.

    Best practices for writing Dockerfiles | Docker Documentation
    https://docs.docker.com/develop/develop-images/dockerfile_best-practices/
    Kliknutím sem můžete změnit nastavení reklam