[vpsFree.cz: community-list] Podman (Docker) na VPS

Jakub Skokan jakub.skokan at vpsfree.cz
Mon Jul 13 18:01:37 CEST 2020


Ahoj,

On 7/12/20 9:20 PM, Petr Kutalek wrote:
> tuším, že Pavel Šnajdr na poslední schůzi v Praze říkal (volně 
> převyprávěno), že je rád, když se lidi ozvou, protože to pak připomíná 
> více komunitu, nikoli jen podporu á la firma. Tak já tedy jeden dotaz 
> mám – týká se to Dockeru, resp. Podmana. :)
> 
>   - Připravil jsem si lokálně na svém _lab_ desktopu image pro 
> kontejnery a pody, které chci nasadit na VPSce. Vše OK, žádné extra 
> vylomeniny.
>   - Pročetl jsem https://kb.vpsfree.cz/navody/vps/vpsadminos/docker
>   - Podíval jsem se na https://kb.vpsfree.cz/navody/vps/vpsadminos
>   - Používám Arch, Podman v rootless režimu (z mnoha důvodů).
>   - Povolil jsem ve features podporu FUSE (pro overlayfs) a TUN/TAP.
>   - Nevím, co přesně dělá "Docker" feature, ale reálně nic nemění, 
> výsledek je stejný.
> 
> Když se ale snažím spustit byť jen demo `podman run --rm hello-world`, 
> nedaří se mi:
>> Error:
>> container_linux.go:367: starting container process caused:
>> process_linux.go:459: container init caused:
>> process_linux.go:382: setting rlimits for ready process caused:
>> error setting rlimit type 7: invalid argument: OCI runtime error
> 
> Narazil jste někdo při zprovoznění Dockeru na něco podobného? Můžete mne 
> nasměrovat k cíli?
> 
> Resp. proč/v čem je nastavení Dockeru v našem virtualizačním řešení 
> nějak specifické?

Hm, chvíli jsem si s tím hrál a tuhle chybu jsem nepotkal... na jakém to 
máš nodu? Mně to na Archu na node2.stg funguje. Co jsem nerozchodil je 
podman pod neprivilegovaným uživatelem, hello-world funguje, ale když 
zkusím pustit bash z ubuntu:latest, stěžuje si to "there might not be 
enough IDs available in the namespace". Přes to jsem se nedostal, i když 
mám snad /etc/sub{u,g}id nastaveno...

Tohle mi teda projde jak pod rootem, tak neprivilegovaným uživatelem na 
nově vytvořené VPS:

   docker run --rm -it --cgroup-manager cgroupfs hello-world

Bez --cgroup-manager si to stěžuje že to potřebuje cgroupv2... Máš toho 
podmana aktuálního? Vidím třeba

   https://github.com/containers/podman/pull/2126

Proč je to u nás s kontejnerama někdy složitější? Protože už VPS od nás 
je kontejner v user namespace, tj. omezenější prostředí a s tím musí 
docker/podman/whatever počítat. Kontejnery v kontejnerech v 
kontejnerech... jupí.

Ono i kontejnery tak jak je linux umí mají k dokonalosti hodně daleko, 
máme spoustů vlastních patchů v kernelu, aby se to vůbec dalo 
používat... poslední chuťovka je, že když teda řešíme memory limity VPS 
přes memory cgroup, OOM killer při nedostatku paměti vybere libovolný 
proces -- klidně ti sejme /sbin/init a tím celou VPS.

Jakub


More information about the Community-list mailing list