Skip to content

Latest commit

 

History

History
75 lines (56 loc) · 2.7 KB

opensuse-docker-install.md

File metadata and controls

75 lines (56 loc) · 2.7 KB

Install Docker for Kata Containers on openSUSE

Note:

  1. Install the latest version of Docker with the following commands:

    Notes:

    $ sudo zypper -n install docker

    For more information on installing Docker please refer to the Docker Guide.

  2. Configure Docker to use Kata Containers by default with ONE of the following methods:

    1. Specify the runtime options in /etc/sysconfig/docker (this is the default and is applied automatically if you select the automatic installation option)

      $ DOCKER_SYSCONFIG=/etc/sysconfig/docker
      # Add kata-runtime to the list of available runtimes, if not already listed
      $ grep -qE "^ *DOCKER_OPTS=.+--add-runtime[= ] *kata-runtime" $DOCKER_SYSCONFIG || sudo -E sed -i -E "s|^( *DOCKER_OPTS=.+)\" *$|\1 --add-runtime kata-runtime=/usr/bin/kata-runtime\"|g" $DOCKER_SYSCONFIG
      # If a current default runtime is specified, overwrite it with kata-runtime
      $ sudo -E sed -i -E "s|^( *DOCKER_OPTS=.+--default-runtime[= ] *)[^ \"]+(.*\"$)|\1kata-runtime\2|g" $DOCKER_SYSCONFIG
      # Add kata-runtime as default runtime, if no default runtime is specified
      $ grep -qE "^ *DOCKER_OPTS=.+--default-runtime" $DOCKER_SYSCONFIG || sudo -E sed -i -E "s|^( *DOCKER_OPTS=.+)(\"$)|\1 --default-runtime=kata-runtime\2|g" $DOCKER_SYSCONFIG
    2. Docker daemon.json

      Create docker configuration folder.

      $ sudo mkdir -p /etc/docker
      

      Add the following definitions to /etc/docker/daemon.json:

      {
        "default-runtime": "kata-runtime",
        "runtimes": {
          "kata-runtime": {
            "path": "/usr/bin/kata-runtime"
          }
        }
      }
  3. Restart the Docker systemd service with the following commands:

    $ sudo systemctl daemon-reload
    $ sudo systemctl restart docker
  4. Run Kata Containers

    You are now ready to run Kata Containers:

    $ sudo docker run busybox uname -a

    The previous command shows details of the kernel version running inside the container, which is different to the host kernel version.