Fórum Root.cz
Hlavní témata => Distribuce => Téma založeno: A. F. 23. 07. 2020, 04:15:49
-
Aktualizoval jsem si na Fedoru 32 a teď bojuju s dockerem.
Když nainstaluju `docker-ce`, tak mi to chcípá na cgroups. Když nainstaluju `moby-engine`, tak je to podobné.
Když nainstaluju `podman-docker` tak to celkem funguje, ale pod rootem: mi to vytváří container s IP nějak 10.80.8.8. Dá se to nějak ovlivnit? Ale hlavní problém mám s tím, že pod obyč userem vytvořím container, ale není mu přiřazená žádná IP. A mě se nepovedlo vyzkoumat, kde se to nastavuje.
Můžete mi poradit? Kde se dá ovlivnit ta IP adresa?
-
1. podman-docker je jen docker alias pro Podman
2. Zkuste přidat k parametrům jádra
systemd.unified_cgroup_hierarchy=0
V souboru /etc/default/grub do GRUB_CMDLINE_LINUX
Poté stačí vygenerovat nastavení zavaděče
sudo grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg
Nebo pro počítač bez UEFI:
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
To by měl docker fungovat
-
Druhá možnost je naučit se používat podman :)
-
1. podman-docker je jen docker alias pro Podman
2. Zkuste přidat k parametrům jádra
systemd.unified_cgroup_hierarchy=0
V souboru /etc/default/grub do GRUB_CMDLINE_LINUX
Poté stačí vygenerovat nastavení zavaděče
sudo grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg
Nebo pro počítač bez UEFI:
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
To by měl docker fungovat
OK, to je dost zběsilost ale ok. A tento návod se týká které varianty? Té s podman-docker? U něj jsem neměl problém s cgroup. U něj jsem měl problém že nerozumím těm IP adresám.
-
Druhá možnost je naučit se používat podman :)
Nejsem v zásadě proti. Ale jak tedy?
Můj momentální styl práce s dockerem (který mi teda maximálně vyhovuje), že si vytvořím kontainer s mysql, zjistím jakou má IP (172.17.0.2). Pak si vytvořím mariu, zjistí jako má IP (172.17.0.3), pak si vytvořím php5.6webserver IP (172.17.0.4), php7.2webserver IP (172.17.0.5). Následně různě přehazuju propojuju a tak. Zapamatoval jsem si, že když budu spouštět ty kontainery v tomto pořadí, tak budou dostávat v tomto pořadí IP adresy.
Ano, vím o Kubernets, a spol - ale k tomu jsem ještě nedozrál. Jde to bez nich, postaru způsobem, kterým jsem popsal?
Díky.
-
1. podman-docker je jen docker alias pro Podman
2. Zkuste přidat k parametrům jádra
systemd.unified_cgroup_hierarchy=0
V souboru /etc/default/grub do GRUB_CMDLINE_LINUX
Poté stačí vygenerovat nastavení zavaděče
sudo grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg
Nebo pro počítač bez UEFI:
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
To by měl docker fungovat
OK, to je dost zběsilost ale ok. A tento návod se týká které varianty? Té s podman-docker? U něj jsem neměl problém s cgroup. U něj jsem měl problém že nerozumím těm IP adresám.
To je pro ten Docker jak jsem zmínil nakonec, protože podman-docker jen přidá alias docker=podman
-
Druhá možnost je naučit se používat podman :)
Nejsem v zásadě proti. Ale jak tedy?
Můj momentální styl práce s dockerem (který mi teda maximálně vyhovuje), že si vytvořím kontainer s mysql, zjistím jakou má IP (172.17.0.2). Pak si vytvořím mariu, zjistí jako má IP (172.17.0.3), pak si vytvořím php5.6webserver IP (172.17.0.4), php7.2webserver IP (172.17.0.5). Následně různě přehazuju propojuju a tak. Zapamatoval jsem si, že když budu spouštět ty kontainery v tomto pořadí, tak budou dostávat v tomto pořadí IP adresy.
Ano, vím o Kubernets, a spol - ale k tomu jsem ještě nedozrál. Jde to bez nich, postaru způsobem, kterým jsem popsal?
Díky.
Rootfull kontejnery: sudo podman inspect -f "{{.NetworkSettings.IPAddress}}" <jmenokontejneru>
Rootless kontejnery: Ty IP adresu nedostávají. Komunikace je možná přes mapování portů (80 v kontejneru na 8080 v localhostu, třeba). Ideální je naházet kontejnery které spolu komunikují navzájem do jednoho podu.
Jinak tohle je docela obsáhlé vysvětlení https://www.redhat.com/sysadmin/container-networking-podman