Windows11 WSL2 Ubuntu 24.04 LTS

Docker CE インストール概要

ここまで悪銭苦闘しましたが、Docker Disktop for Linux のインストールはあきらめ、 Docker CE (Community Edition) をインストールすることにしました。
Windows (WSL) に Docker Desktop 無しで Docker Community Edition をインストールする
が参考になります。
インストール準備方法は、Docker Disktop for Linux のインストール準備方法とほぼ同じです。
詳しくはDocker Disktop を Ubuntu 24.04 にインストール を見てください。

Docker CE インストール準備

Ubuntu では基本的な CA 証明書が ca-certificates パッケージで提供されています。
よって、ca-certificates パッケージをインストールします。
yamada@yama:~$ sudo apt-get install ca-certificates
上手くいかない場合は
~$ sudo apt-get install ca-certificates curl gnupg lsb-release
又は、
~$ sudo apt install ca-certificates curl gnupg
ca-certificates をインストールすると
/etc/apt/keyrings/ フォルダが使用可能となりますので、このフォルダに対して
yamada@yama:~$ sudo install -m 0755 -d /etc/apt/keyrings
を実行します。
Docker のパッケージ リポジトリ設定ができるようになりました。

Docker CE インストール準備Ⅱ

Docker CE リポジトリ GPG キーを取得します。

yamada@yama:~$ 
 sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc

docker.asc のパーミッションを変更します。
すべてのユーザ a に、アクセス権読み取り可能 r を付与します。
yamada@yama:~$ sudo chmod a+r /etc/apt/keyrings/docker.asc

Docker CE インストール準備Ⅲ

自分のシステムのアーキテクチャと Ubuntu のバージョンに合わせて、Docker の公式リポジトリの URL を作成し、 それを /etc/apt/sources.list.d/ ディレクトリに保存します。

yamada@yama:~$
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null 

Docker CE インストール

パッケージインストールをします。

yamada@yama:~$ sudo apt update
yamada@yama:~$ sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Docker CE インストール確認

yamada@yama:~$ sudo docker run hello-world でインストール確認をします。

[結果]
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
c1ec31eb5944: Pull complete
Digest: sha256:5b3cc85e16e3058003c13b7821318369dad01dac3dbb877aac3c28182255c724
Status: Downloaded newer image for hello-world:latest

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

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/get-started/

となれば OK です。

sudo 権限なしで Dockerを実行

sudo 権限なしで Docker を実行できるようにすると便利です。
以下コマンドで、ユーザーをdockerグループに追加します。
sudo usermod -aG docker $USER
私の場合は
yamada@yama:~$ sudo usermod -aG docker yamada
ubuntu を再起動させると設定されます。

Docker サービス確認

Docker を典型的にインストールすると
Docker デーモン(コンテナを管理するために常駐するプロセス)
の起動はユーザが手動で行うのではなく、システム・ユーティリティによって起動されます。
これにより、マシンの再起動時に、自動的に Docker を起動するのが簡単になります。
次に Docker の基本コマンドを照会します。

  1. Docker バージョン確認

    docker --version
    又は
    yamada@yama:~$ docker -v
    [結果]
    Docker version 27.4.1, build b9d17ea
    のように表示されます。
    docker version を使うともっと詳しく表示されます。
    yamada@ysenba:~$ docker version
    [結果]

    Client: Docker Engine - Community
     Version:           27.4.1
     API version:       1.47
     Go version:        go1.22.10
     Git commit:        b9d17ea
     Built:             Tue Dec 17 15:45:46 2024
     OS/Arch:           linux/amd64
     Context:           default
    
    Server: Docker Engine - Community
     Engine:
      Version:          27.4.1
      API version:      1.47 (minimum version 1.24)
      Go version:       go1.22.10
      Git commit:       c710b88
      Built:            Tue Dec 17 15:45:46 2024
      OS/Arch:          linux/amd64
      Experimental:     false
     containerd:
      Version:          1.7.24
      GitCommit:        88bf19b2105c8b17560993bee28a01ddc2f97182
     runc:
      Version:          1.2.2
      GitCommit:        v1.2.2-0-g7cb3632
     docker-init:
      Version:          0.19.0
      GitCommit:        de40ad0
    
  2. Docker サービス起動確認

    yamada@yama:~$ systemctl status docker
    [結果]

    yamada@yama:~$ systemctl status docker
    ● docker.service - Docker Application Container Engine
         Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; preset: enabled)
         Active: active (running) since Sun 2024-12-29 12:13:45 JST; 47min ago
    TriggeredBy: ● docker.socket
           Docs: https://docs.docker.com
       Main PID: 795 (dockerd)
          Tasks: 14
         Memory: 83.7M ()
         CGroup: /system.slice/docker.service
                 └─795 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
    
    12月 29 12:13:45 yamada dockerd[795]: time="2024-12-29T12:13:45.752641316+09:00" level=info msg="Lo>
    ・・・・・・・・
    

ここまでで Docker CE を WSL/Ubuntu 24.04.1 LTS にインストールしその確認作業をしてきました。
引き続き、Docker サービスコマンドについて見ていきます。


  • Docker サービス確認Ⅱ に進む
  • Docker Disktop インストール準備Ⅴ に戻る
  • Docker Disktop を Ubuntu 24.04 にインストール に戻る
  • 70VPS に戻る