[vpsFree.cz: community-list] vpsAdminOS: Zkoušíme Docker

Jakub Skokan jakub.skokan at vpsfree.cz
Sat Jun 9 16:27:33 CEST 2018


On 06/09/2018 09:45 AM, ondra.gersl at gmail.com wrote:
> Už to testuju na Debian 9, "docker run hello-world" mi funguje v pohodě.
> Zkoušel jsem např. node:alpine, který se však z nějakého důvodu startuje
> poměrně pomalu. Příkaz: "docker run --rm -it --network bridge-coi
> node:alpine wget --help" trvá cca. 4 vteřiny, přitom na jiném virtuálu
> (u wedosu) trvá cca. 1 vteřinu. Nginx se mi zatím rozchodit nepodařilo -
> příkaz "docker run --rm --name some-nginx -p 8080:80 nginx:alpine" sice
> kontejner spustí, ale vrací 403.

Pomalé je to protože VFS storage driver. Na wedosu to určitě používá
overlayfs driver.

Na Debian 9 Docker nastavuje špatné oprávnění pro rootfs kontejneru,
proto nefunguje jiný uživatel než root. Předpokládám, že nginx se spustí
pod rootem a po nabindování portu se přepne na jiného uživatele. Od té
chvíle si nic z disku nepřečte. Použij Ubuntu, nebo happy debugging. Ve
strace vidím ten chmod 0600, ale kde/co/proč to volá netuším. V KB je na
to upozornění.

> Jinak jsem si všiml, že parametr "--network bridge-coi" je třeba
> přidávat i k "docker build", pokud je při balení image třeba připojení
> do internetu.

Včera jsem ještě řešil gitlab runner s docker executorem, který neumí
správně linkovat služby na jiné síti než té výchozí. Jestli to jde nějak
nastavit v Dockeru nevím, ale podařilo se mi tu výchozí síť přenastavit
skriptem tak, aby fungovala, viz KB:

  https://kb.vpsfree.cz/navody/server/gitlab_runner#uprava_vychozi_site

systemd zavolá ten skript na přenastavení iptables po každém spuštění
dockerd. Moc se mi tohle řešení nelíbí, ale nemusíš specifikovat vlastní
--network, pokud to nejde nebo nechceš.

Jakub


More information about the Community-list mailing list