導入
近年、注目されているコンテナ技術の代表的なソフトウェアのDockerについてインストール手順を整理してみました。OSの種類によって、インストールの仕方が異なりますので、ご注意ください。
検証環境
検証環境は以下の通りです。それぞれEC2インスタンスを作成して検証しました。
- 検証基盤:AWS EC2
- インスタンスタイプ:t3.micro
- コマンド実行方法:SSM(AWS Systems Manager)
Amazon Linux 2 (kernel5.10)またはAmazon Linux 2023でのインストール手順
EC2で最も利用しやすいAmazon Linux2またはAmazon Linux 2023の手順です。
- Dockerをインストール
- yum -y install docker
- docker -v
- Dockerサービスを起動
- systemctl status docker
- sudo systemctl start docker
- systemctl status docker
- Dockerサービスの自動起動設定をON
- sudo chkconfig docker on
- systemctl status docker
- dockerグループにユーザーを追加することでdockerコマンドを利用する権限を付与
- ls -l /run/docker.sock
- sudo usermod -aG docker ec2-user
- sudo usermod -aG docker ssm-user
- cat /etc/group | grep “docker”
- サーバ再起動
Ubuntu22.04でのインストール手順
無償LinuxOSとしてよく使われているUbuntu22.04のインストール手順になります。
- GPGキーをダウンロード
- curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg –dearmor -o /etc/apt/keyrings/docker.gpg
- Dockerをリポジトリに追加
- echo “deb [arch=$(dpkg –print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable” | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
- aptを最新化
- apt update
- Dockerをインストール
- sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
- dockerグループにユーザーを追加することでdockerコマンドを利用する権限を付与
- ls -l /var/run/docker.sock
- sudo usermod -aG docker ubuntu
- sudo usermod -aG docker ssm-user
- cat /etc/group | grep “docker”
- サーバ再起動
RHEL9でのインストール手順
RHEL8以降はDockerをインストールするためのリポジトリがないため、Podmanを利用した方がよいかもしれません。ただし、一応Dockerはインストールできるみたいなので、インストール手順を整理しました。(RHEL7であればextraリポジトリからインストールする方法もあるようです。)
- Dockerリポジトリを追加
- sudo dnf repolist
- sudo dnf config-manager –add-repo https://download.docker.com/linux/rhel/docker-ce.repo
- sudo dnf repolist
- sudo vi /etc/yum.repos.d/docker-ce.repo
- centOS用の下記URLに書き換える。
- https://download.docker.com/linux/centos/9/x86_64/stable/
- centOS用の下記URLに書き換える。
- Dockerをインストール
- sudo dnf -y install docker-ce docker-ce-cli containerd.io docker-compose-plugin
- docker -v
- docker compose version
- Dockerサービスを起動
- systemctl status docker
- sudo systemctl start docker
- systemctl status docker
- Dockerサービスの自動起動設定をON
- sudo systemctl enable docker.service
- systemctl status docker
- dockerグループにユーザーを追加することでdockerコマンドを利用する権限を付与
- ls -l /run/docker.sock
- sudo usermod -aG docker ec2-user
- sudo usermod -aG docker ssm-user
- cat /etc/group | grep “docker”
- サーバ再起動
(参考)RHEL9でのPodmanインストール手順
RHEL8からコンテナ化に注力するためにDockerの代わりに採用されたPodmanのインストール手順も整理しておきます。
- podmanをインストール
- sudo dnf -y install podman
- podman -v
- Dockerサービスを起動
- systemctl status podman
- sudo systemctl start podman
- systemctl status podman
- Dockerサービスの自動起動設定をON
- sudo systemctl enable podman.service
- systemctl status podman
- ユーザーを追加することでpodmanコマンドを利用する権限を付与
- ls -l /run/podman/podman.sock
- sudo loginctl enable-linger ec2-user
- sudo loginctl enable-linger ssm-user
- sudo loginctl list-users
- サーバ再起動
まとめ
Linuxだとだいぶ楽にDockerをインストールできると思います。
Dockerをインストールして、開発のためにコンテナ環境を構築しましょう。