• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    ALMADDocker a kontejnery
    Docker aneb přístupný provoz kontejnerizovaných aplikací
    Docker(Hub), Compose, Swarm, boot2docker, DevOps, LXC, ECS, TumTum a jiné buzzwordy
    Bezpečnost v prostředí kontejnerů
    Related: automatizace [ Centralizovaná správa stanic a ostatních prvků v síti konfigurace/inventarizace/instalace/aktualizace/zalohovani ]
    rozbalit záhlaví
    GIOMIKY
    GIOMIKY --- ---
    RAINBOF: Cronem systemctl restart dockerd, kdyz mas jeden, tak by to nekomplikoval neco, radeji, cronem v tom stroji, neco jako restart command cco x hodun, dnum minut. Radost pracovat, na takovym stroji, imho.
    MARTEN
    MARTEN --- ---
    RAINBOF: Pokud nechces swarm, k3s/k8s apod., tak se zkus kouknout na tenhle image https://hub.docker.com/r/willfarrell/autoheal/, resi to. Bezi vedle ostatnich a monitoruje je, podobne treba jako traefik
    RAINBOF
    RAINBOF --- ---
    nez se do toho opru,

    potreboval bych neco co mi zkusi 2x-3x restartovat kontejner pokud jeho healthcheck failne, kolega radi docker swarm ale nejsem si uplne jist zda je to vubec vhodne.
    MARTEN
    MARTEN --- ---
    Tak pro zajimavost. V pripade kubernetes staci nastaveni egress. V pripade docker/docker-compose je reseni mit container s proxy a vsem kterym chci zakazat pristupovat ven, tak nastavit `network_mode: service:` a tam uz vse resit jako beznou proxy.
    HVJ3R
    HVJ3R --- ---
    DOKIS: ad 2 je v zasade sys root trusted a java root trusted. Pokud teda neresime browsery, ale i tem se to da podstrcit.
    GIOMIKY
    GIOMIKY --- ---
    MARTEN: Na testy bych zkusil tinyproxy.
    DOKIS
    DOKIS --- ---
    MARTEN: Pokud chces logovani a filtrovani na urovni URL, ne IP adres, a zaroven to ma byt nejen HTTP, ale i HTTPS, tak mas problem. Protoze chces delat neco, cemu ma HTTPS z principu branit - jde vlastne o variantu man-in-the-middle (MITM) utoku. V zasade mas asi dve moznosti, obe spatne:
    1) v kazdem kontejneru pro kazdy produkt nastavit proxy, takze ten klient na tom MITM bude vedome spolupracovat; samozrejme nastaveni proxy neni nejake jednotne a env. promennou sice dost veci bere, ale zdaleka ne vsechny.
    2) skutecne udelat MITM na spojeni nespolupracujich aplikaci. Tam ale potrebujes tem aplikacim vnutit svuj root certifikat jako duveryhodny. Opet plati, ze existuje bezny zpusob, jak to udelat, ale zdaleka ne vsechno ho pouziva.
    MARTEN
    MARTEN --- ---
    MUXX: Budu muset zkusit. Jen ta http_proxy variable neni podporovana kazdym toolem/jazykem a je pro nektere hrozny opruz najit co specialne potrebuji. Ale asi to zkusim
    MUXX
    MUXX --- ---
    MARTEN: Rekl bych, ze squid bude nejlepsi. Proxy se resi stejne jako na linuxu pres http_proxy env variable. Zalezi kde to provozujes, da se to nastavit i na host https://docs.docker.com/network/proxy/
    MARTEN
    MARTEN --- ---
    Neresim inbound. Nic s balancingem, routingem apod.
    Potrebuju vyresit outbound z containeru. Defaultne zakazat containerum jakoukoliv komunikaci ven a pouze jim povolovat whitelistem kam muzou.
    Tedy nic spolecneho s haproxy, nginxem, traefik atd.
    Squid rozchodim (pokud nezna nekdo ted lepsi reseni), ale nevim jak nastavit containery a automaticky je brat pres proxy a vlastne i at drzi container informaci o tom, ktera pravidla pro nej plati. At se zmenou ip, apod., nemusim resit znovu whitelistovani.
    JON
    JON --- ---
    MARTEN: a nechces spis neco, co je opravdova service-mesh?
    MUXX
    MUXX --- ---
    MARTEN: kdyz je vsude SSL, tak v tom logu uvidis maximalne IP adresy ne? to jeste pak bude dost prace zjistit co vlastne ten traffic znamena ne?
    RUDOLF
    RUDOLF --- ---
    MARTEN: traefic se dá řídit podle labels co máš u každého kontejneru

    Traefik Docker Documentation - Traefik
    https://doc.traefik.io/traefik/providers/docker/
    RAINBOF
    RAINBOF --- ---
    Haproxy se nelibi ?
    MLEKAR_STEIN
    MLEKAR_STEIN --- ---
    MARTEN:
    jestli je to jen http tak by mohlo fungovat ngx_http_proxy_connect_module
    ale zkusenost nemam

    a na odchozi trafik asi muze byt squid funkcni
    MARTEN
    MARTEN --- ---
    MLEKAR_STEIN: Nechci reverse proxy, ale traffic z containeru pres proxy, abych mohl whitelistnout adresy kam smi bezici service.
    MLEKAR_STEIN
    MLEKAR_STEIN --- ---
    MARTEN:
    squid je asi trochu na jine pouziti.

    urcite bych pouzil nginx, da se misto dns pouzit path a pak mas pro kazdou path vlastni proxy_pass.
    MARTEN
    MARTEN --- ---
    Potreeboval bych vsechny sve docker containery dat za proxy. Jaky proxy server by ste pouzili? Znam akorat tak squid, ale prijde mi to trochu kanon na vrabce. Chci jen at to ma log, nejake UI at zjistim co kam leze. Ani nepotrebuju snad uzivatele.
    A jde nejak udelat, aby kazdy container jel pres tuto proxy, abych to nemusel pro kazdy tool nastavovat zvlast a jeste uvnitr?
    BONEFLUTE
    BONEFLUTE --- ---
    Ahoj.
    Zkouším použít podman-compose pod neroot uživatelem.
    Mám jednoduchý webový php server + mysql. Tedy dvě služby. Nic složitého. Běží to.
    Problém je v tom, že já bych rád, aby ta databáze měla IP adresu. Abych si ji mohl vypsat pomocí podman inspect a abych se pomocí té IP adresy do té databáze mohl přihlásit pomocí nástroje (dbeaver například).

    Doufám, že to bude něco jednoduchého a jsem jen slepej. Nedaří se mi nic najít.

    Předem díky.
    RAINBOF
    RAINBOF --- ---
    JON: zarim jsem to ohnul takto:

    docker compose build -profile1
    Docker compose build -profile2

    Kde nejdriv postavim set tech "dole" a pak teprv ty vys. Je to oprc ale funguje to.
    SH_PANDA
    SH_PANDA --- ---
    RAINBOF: ok, na multi-stage buildy jsem nepomyslel. To nam resi package dependency tool, ktery pusti buildy podle deklarovanych dependencies.
    SAMGARR
    SAMGARR --- ---
    IMO to docker-compose neresi schvalne a nechavaj to na CI.
    Kliknutím sem můžete změnit nastavení reklam