kata-containers/docs/install/docker/ubuntu-docker-install.md
bin liu d7f75dce83 docs: remove shim/proxy topics and fix docs links
And also change links from old documentation to docs sub-directory.

Fixes #444

Signed-off-by: bin liu <bin@hyper.sh>
2020-07-24 17:53:38 +08:00

2.5 KiB

Install Docker for Kata Containers on Ubuntu

Note:

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

    Notes:

    $ sudo -E apt-get -y install apt-transport-https ca-certificates software-properties-common
    $ curl -sL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
    $ arch=$(dpkg --print-architecture)
    $ sudo -E add-apt-repository "deb [arch=${arch}] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
    $ sudo -E apt-get update
    $ sudo -E apt-get -y install docker-ce
    

    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. systemd (this is the default and is applied automatically if you select the automatic installation option)

      $ sudo mkdir -p /etc/systemd/system/docker.service.d/
      $ cat <<EOF | sudo tee /etc/systemd/system/docker.service.d/kata-containers.conf
      [Service]
      ExecStart=
      ExecStart=/usr/bin/dockerd -D --add-runtime kata-runtime=/usr/bin/kata-runtime --default-runtime=kata-runtime
      EOF
      
    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.