User Tools

Site Tools


manuals:vps:vpsadminos:docker

Docker on vpsAdminOS

We support latest version of Docker on our vpsAdminOS servers.

Installation

As there are not everytime latest packages in distribution repos, we recommend to instead use the docker.com ones. Installation of these can be done easily on:

Other distributions are not tested, but there is big chance they will be totally fine. Feel free to modify this page afterwise.

Ubuntu 18.04 LTS

apt-get -y update 
apt-get -y install apt-transport-https ca-certificates curl software-properties-common 
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add - 
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable" 
apt-get -y update 
apt-get -y install docker-ce 

Fedora 33

The upstream version of docker moby-engine can be installed directly from Fedora repositories:

dnf install -y moby-engine

It's necessary to configure the dockerd daemon to run with cgroupdriver=cgroupfs, otherwise you encounter the following problem:

$ 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.

To configure the cgroup driver one needs to override the ExecStart for docker.service:

$ systemctl edit docker
ExecStart=/usr/bin/dockerd \
          --host=fd:// \
          --exec-opt native.cgroupdriver=cgroupfs \
          $OPTIONS

General stuff

Checking that docker is running smoothly:

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
If service “docker.service” will not get up, its probably this (already fixed) bug in containerd. To solve this bug we can replace /sbin/modprobe, or modify containerd.service with changes of value ExecStartPre.
mv /sbin/modprobe /sbin/modprobe.old && ln -s /bin/true /sbin/modprobe

Now we can try docker run hello-world:

docker run hello-world

Hello from Docker!
This message shows that your installation appears to be working correctly.
[...]

Test of networking can be done with:

docker run -it alpine ping -c 3 vpsfree.cz

Something not working?

If any command result prints permission denied most likely its not enabled in AppArmor profile. We can fix this, but we really need to know way how to reproduce it and know your VPS ID. Come by to IRC #vpsfree / #vpsadminos or mail us on support.

manuals/vps/vpsadminos/docker.txt · Last modified: 2023/02/02 23:50 by parolek