LoginSignup
14
14

More than 1 year has passed since last update.

Ubuntu20.04へのDocker Compose v2 インストール

Last updated at Posted at 2021-09-30

はじめに

気が付いたらDocker Compose のv2がリリースされていた。V1と比較して

  • PythonではなくGolangベース
  • docker-composeではなくdocker composeで実行
  • インストール手順も変更

という変更点があって、興味がわいたので試しにインストールしてみた。
ついでに、Docker本体も推奨されている手順でインストールしなおしてみた。
そのメモ。

2022.8.21 追記
より簡単な導入手順が公開されていたので、この記事の内容を改めてまとめなおしました。
Ubuntu 22.04 向けとありますが、20.04 でも導入できますので以下のリンクをご参照ください。

環境

  • インストール先
    • Ubuntu Server 20.04 (x86_64)
  • インストールするもの
    • Docker 最新版
    • Docker Compose version v2.6.1

手順

Docker インストール

【参考】"Install Docker Engine on Ubuntu". docker docs.

Dockerのリポジトリを登録してインストール(参考サイトで推奨されている手順)
# 依存パッケージインストール
sudo apt install \
  apt-transport-https ca-certificates curl gnupg lsb-release

# Dockerの公式GPGキーを追加
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | \
  sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

# Dockerリポジトリ登録
echo \
  "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# Docker Engineのインストール
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io
動作確認
$ docker --version
Docker version 20.10.17, build 100c701

$ sudo docker run hello-world
...
Hello from Docker!
This message shows that your installation appears to be working correctly.
...

Docker Compose v2インストール (本題)

【参考】"Where to get Docker Compose". Github.

/usr/local/libexec/docker/cli-pluginsにインストールする場合
# インストール先ディレクトリがなければつくる。説明を楽にするためにカレントディレクトリも変更
sudo mkdir -p /usr/local/libexec/docker/cli-plugins
cd /usr/local/libexec/docker/cli-plugins

# リリースモジュールをダウンロードし、docker-composeという名前でインストール先に保存
sudo curl -L https://github.com/docker/compose/releases/download/v2.6.1/docker-compose-linux-x86_64 -o docker-compose

# docker-composeを実行可能にする
sudo chmod +x docker-compose
動作確認
$ docker compose version
Docker Compose version v2.6.1
  • 最新版を使いたい場合は、URLのバージョン部分を変更してDocker Composeのインストール手順を再実行(つまりは docker-composeファイルを上書き)すればよい。 利用可能なバージョンはこちらを参照
  • v2.0.0とv2.0.1以降で、リリースモジュールのダウンロードURLの末尾が異なっているので注意。
    • 旧)docker-compose-linux-amd64 --> 新)docker-compose-linux-x86_64

補足:Docker Composeのインストール先について

参考サイトにはDocker Composeのインストール先として以下の5つのディレクトリが挙げられている。

  1. $HOME/.docker/cli-plugins
  2. /usr/local/lib/docker/cli-plugins
  3. /usr/local/libexec/docker/cli-plugins
  4. /usr/lib/docker/cli-plugins
  5. /usr/libexec/docker/cli-plugins

自分の環境では5番目のディレクトリだけが存在していたが、ここは触りたくなかったので3番目のディレクトリを新規作成した。
何も考えずに1番目のディレクトリにインストールしてもいいと思う。
1番目のディレクトリへインストールする場合はsudoも不要なのでなにかと楽かも。

おわりに

今回の記事はインストールのみ。そのうち本格的に使ってみる。 1
なお、Docker Composeのファイル名変更せずに保存すると以下のように怒られる。
ファイル名は上記手順の通りdocker-composeという名前で保存すること。

ファイル名を変更しなかった時のエラー
$ docker
Usage:  docker [OPTIONS] COMMAND
...

Invalid Plugins:
  compose-linux-x86_64 plugin candidate "compose-linux-x86_64" did not match "^[a-z][a-z0-9]*$"
  1. 2022.7.16現在、composeは重宝しています。

14
14
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
14
14