Uživatelské nástroje

Nástroje pro tento web


navody:vps:vpsadminos:docker

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revizePředchozí verze
Následující verze
Předchozí verze
navody:vps:vpsadminos:docker [2018/09/30 12:22] – Vlastni sit uz neni potreba Aithernavody:vps:vpsadminos:docker [2023/02/25 21:02] (aktuální) – třeba nainstalovat gnupg, jinak apt-key odmítá fungovat s3w3n
Řádek 1: Řádek 1:
 <page>manuals:vps:vpsadminos:docker</page> <page>manuals:vps:vpsadminos:docker</page>
 ====== Docker na vpsAdminOS ====== ====== Docker na vpsAdminOS ======
-Na vpsAdminOS je funkční Docker v aktuální verzi (v době psaní 18.03) s VFS 
-storage driverem. 
- 
 ===== Instalace ===== ===== Instalace =====
-Nejprve ve vpsAdminu v detailu VPS povolte feature **Docker (experimental)**. 
  
 Docker instalujte z repozitářů na docker.com, nedoporučujeme používat Docker Docker instalujte z repozitářů na docker.com, nedoporučujeme používat Docker
-z distribučních repozitářů, protože bývá starší a můžou tam mít nějaké patche. +z distribučních repozitářů, protože bývá starší a můžou tam mít nějaké patche 
-Instalujte podle návodu:+navíc. Instalujte podle návodu:
  
-  * [[https://docs.docker.com/install/linux/docker-ce/ubuntu/|Ubuntu 18.04]] (místo //stable// repozitáře použijte //test//, dokud se Docker neuráčí [[https://github.com/docker/for-linux/issues/290|vydat stable verzi]]) +  * [[https://docs.docker.com/engine/install/ubuntu/|Ubuntu]] 
-  * [[https://docs.docker.com/install/linux/docker-ce/fedora/|Fedora 28]] +  * [[https://docs.docker.com/engine/install/fedora/|Fedora]] 
-  * [[https://docs.docker.com/install/linux/docker-ce/debian/|Debian 9]] (pozor na [[#zname_problemy|známé problémy]])+  * [[https://docs.docker.com/engine/install/debian/|Debian]] 
 +  * [[https://docs.docker.com/engine/install/centos/|CentOS 7 a 8]] 
 + 
 +Fungovat mohou samozřejmě i jiné distribuce, ale uvádíme jen ty, které jsme testovali. 
 + 
 +=== Ubuntu 20.04 LTS === 
 +<code> 
 +apt-get -y update  
 +apt-get -y install apt-transport-https ca-certificates curl software-properties-common gnupg 
 +curl -fsSL https://download.docker.com/linux/ubuntu/gpg apt-key add -  
 +add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"  
 +apt-get -y update  
 +apt-get -y install docker-ce  
 +</code> 
 + 
 +=== Fedora 33 === 
 +Upstream verzi Dockeru //moby-engine// nainštalujete priamo z oficiálnych repozitárov distribúcie: 
 +<code> 
 +dnf install -y moby-engine 
 +</code> 
 + 
 +Je potrebné nakonfigurovať //dockerd// daemona aby bežal s cgroupdriver=cgroupfs, inak narazite na nasledujúci problém: 
 +<code> 
 +$ docker run hello-world 
 +docker: Error response from daemon: OCI runtime create failed: cgroup v2 not enabled on this host, can't use systemd (rootless) as cgroups manager: unknown. 
 +</code> 
 + 
 +Konfiguráciu cgroup driveru je možné previesť pomocou overridu //ExecStart// pre docker.service: 
 +<code> 
 +$ systemctl edit docker 
 +ExecStart=/usr/bin/dockerd \ 
 +          --host=fd://
 +          --exec-opt native.cgroupdriver=cgroupfs \ 
 +          $OPTIONS 
 +</code> 
 + 
 +=== CentOS 7 === 
 + 
 +Podle návodu na docker.com nainstalujeme //docker-ce//. Před spuštěním je ještě potřeba upravit konfiguraci Docker daemona v /etc/docker/daemon.json 
 +* nastavit cgroup driver 
 +<code> 
 +
 +    "exec-opt": "native.cgroupdriver=cgroupfs", 
 +
 +</code> 
 + 
 + 
 +==== Všeobecně ==== 
 +Ověříme, zda běží docker v pořádku: 
 + 
 +<code> 
 +systemctl status docker.service 
 + 
 +● docker.service - Docker Application Container Engine 
 +    Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: e 
 +    Active: active (running) since Sun 2020-02-23 14:55:22 UTC; 9s ago 
 +      Docs: https://docs.docker.com 
 +  Main PID: 2893 (dockerd) 
 +     Tasks: 30 
 +    CGroup: /system.slice/docker.service 
 +            └─2893 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/contain 
 +</code> 
 + 
 +<note> 
 +Pokud nenaběhne ''docker.service'', může se jednat o tento už opravený [[https://github.com/containerd/containerd/issues/2772|bug v containerd]]. Řešením je buď 
 +nahradit ''/sbin/modprobe'', nebo upravit ''containerd.service'' a změnit 
 +volbu ''ExecStartPre''
 +<code> 
 +mv /sbin/modprobe /sbin/modprobe.old && ln -s /bin/true /sbin/modprobe 
 +</code> 
 +</note>
  
 Nyní můžete zkusit ''docker run hello-world'': Nyní můžete zkusit ''docker run hello-world'':
Řádek 29: Řádek 95:
 docker run -it alpine ping -c 3 vpsfree.cz docker run -it alpine ping -c 3 vpsfree.cz
 </code> </code>
- 
-===== Storage driver ===== 
-Aktuálně funguje jen //VFS// storage driver. Ten je pomalejší a náročnější na 
-diskový prostor než overlayfs/zfs/btrfs drivery. Chtěli bychom zprovoznit ZFS 
-driver, nicméně ZFS on Linux ještě neumí delegovat datasety do kontejneru, 
-nejdřív se to musí dodělat tam. 
- 
-===== Známé problémy ===== 
- 
-  * Docker na Debian 9 se nechová správně, rootfs kontejneru mají podívné oprávnění (0600) a nevíme proč. Nefungují pak kontejnery, které používají jiného uživatele, než je root. 
-  * Povolení Dockeru dělá problémy některým verzím systemd, dokud se PR [[https://github.com/systemd/systemd/pull/8447|#8447]] nedostane do stable verze. Ubuntu 18.04 a Debian 9 jsou ok, Fedora 28 ne. 
  
 ===== Hlášení chyb ===== ===== Hlášení chyb =====
navody/vps/vpsadminos/docker.1538310153.txt.gz · Poslední úprava: 2018/09/30 12:22 autor: Aither