Ubuntu24.04にDockerをインストールする

installing-docker-on-ubuntu24-04 install
installing-docker-on-ubuntu24-04

この記事ではUbuntuDockerをインストールする方法を解説します。対象のUbuntuのバージョンは24.04です。

はじめに

2024年4月25日にUbuntu 24.04(Noble Numbat)がリリースされました。無償のままでも5年間サポートされる長期サポート版です。いわゆるLTS(Long Time Support)です。そのためリリースが待ち望まれていました。

この記事では、そのUbuntu 24.04にDockerをインストールする方法を解説します。

Ubuntuとは?

Ubuntuは、Debian GNU/Linuxをベースとした無料のオープンソースオペレーティングシステムです。「誰にでも使えるOS」をコンセプトに開発されており、初心者でも使いやすいように直感的なインターフェースと充実したサポート体制が整っています。

そのUbuntuの最新バージョン24.04が2024年4月25日にリリースされました。

Dockerとは?

Dockerは、コンテナと呼ばれる軽量なプラットフォームです。コンテナは仮想環境を作成、配布、実行することができます。アプリケーションに必要なコード、ランタイム環境、ライブラリなどをすべて含みます。そのため、あたかも独立したOSのように動作します。

開発環境

  • Ubuntu 24.04
  • Docker 26.1.0

インストール方法

公式サイトでは以下の4つのインストール方法を紹介しています。

  • Docker Desktop for Linuxをインストールする方法
  • Dockerのaptリポジトリを登録して、そこからインストールする方法
  • debパッケージを手動でダウンロードして、それをインストールする方法
  • インストールスクリプトを使用して自動でインストールする方法
    • テスト・開発環境でのみ推奨されています

この記事では本番のサーバー環境を想定して、2の方法を解説します。

基本的に公式サイトの内容に沿って作業を行います。

古いバージョンの削除

競合を避けるためにアンインストールします。

非公式Dockerパッケージのインストールをしていた場合のみ必要な作業です。

Bash
$ for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done

aptリポジトリを使ってインストールする

aptリポジトリを設定する

設定に必要なパッケージをインストールしてきます。

Bash
$ sudo apt install ca-certificates curl

DockerリポジトリのGPGキーを取得してきます。

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

Dockerリポジトリをaptソースに追加します。

Bash
$ 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をインストールする

最新バージョンをインストールするには次のようにapt installコマンドを実行します。

Bash
$ sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

インストールが完了したらバージョンの確認をしてみましょう。

Bash
$ docker --version
Docker version 26.1.0, build 9714adc

動作確認

それでは、動作確認をしてみましょう。

Bash
$ sudo docker run hello-world

次のように表示されていれば正常に動作しています。

Bash

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/

一般ユーザでDockerを起動する

まず、ユーザをDockerグループに追加します。

Bash
$ sudo usermod -aG docker $USER

次に、変更した設定を反映します。もしくはマシンを再起動してもOKです。

Bash
$  newgrp docker

sudo無しでDockerが実行できるようになっています。

Bash
$ docker run hello-world

docker compose

インストール

docker composedocker-compose-pluginパッケージをインストールすることで実行できるようになります。docker-compose-pluginDockerをインストールするの章ですでにインストールしています。

docker compose versionコマンドで確認してみましょう。

Bash
$ docker compose version
Docker Compose version v2.26.1

動作確認

それでは、動作確認のためにnginxでwebサーバーを立ち上げてみましょう。Dockerfile、compose.yamlsrc/index.htmlの3つのファイルを用意します。

Bash
.
├── Dockerfile
├── compose.yaml
└── src
    └── index.html

各ファイルは以下のような内容にします。

Dockerfile

公式のnginxイメージnginx:1.26.0-alpine-slimを利用します。ローカルのindex.htmlをイメージにコピします。

Dockerfile
FROM nginx:1.26.0-alpine-slim

COPY ./src/index.html /usr/share/nginx/html
Dockerfile

compose.yaml

カレントディレクトリにあるDockerfileに従ってイメージをビルドします。ビルドしたイメージはweb-server:1.0.0という名前にします。立ち上げたコンテナの名前はweb-serverにします。そして、ホストの8080番ポートをコンテナの80番ポートに転送します。

compose.yaml
services:
  nginx:
    build: ./
    image: web-server:1.0.0
    container_name: web-server
    ports:
      - 8080:80
YAML

src/index.html

デフォルトで表示するページです。簡単にするために、Hello, World!と表示するだけにします。

src/index.html
<h1>Hello, World!</h1>
HTML

実行

それでは、Dockerfilecompose.yamlのあるディレクトリで次のコマンドを実行します。

Bash
$ docker compose up -d --build

アクセスすると「Hello, World!」が表示されると思います。

関連記事

  • Ubuntu 24.04 LTSをインストールする

さまざまなOSにDockerをインストールする手順を解説しています。

  • Ubuntu 22.04にDockerをインストールする
  • AlmaLinux 9.3にDockerをインストールする【2024年2月】
  • Raspberry Pi 5にdockerをインストールする

おわりに

この記事ではDockerをインストールする方法を解説しました。Dockerのaptリポジトリからインストールする方法を採用しました。そして、docker composeを使って簡単なコンテナを立ち上げる方法を解説しました。

Dockerを使いこなしてつよつよエンジニア目指しましょう!つよつよエンジニアになるための、お役に立てればと思います。これからも情報発信していくのでよろしくお願いします。コメントやご要望、ご意見もお待ちしています。

コメント