Blog

Docker Compose v1 が GitHub Actions で使えなくなった件

基幹システムグループ N1! オートメーションスペシャリストの南川です。

今回は、Docker Compose v1 ( docker-compose コマンド) が GitHub Actions の Ubuntu と Windows のイメージで使えなくなった件について説明します。

背景

2024年4月3日の朝に、以前紹介したDockerイメージのビルド失敗を通知するGitHub Actionsのワークフローが失敗しているのを確認しました。

その時の実行結果のログ (一部マスク済み) は以下の通りです。

どうやら、 docker-compose コマンドが見つからないようです。

原因

Ubuntu と Windows イメージから Docker Compose v1 が削除されたのが原因でした。
2024年4月1日から 3~4 日間 かけて削除されるとのことです。
https://github.com/actions/runner-images/issues/9557

ちなみに、この Issue は GitHub ホステッドランナーにプリインストール済みのソフトウェア一覧ページから見つけました。

For the overall list of included tools for each runner operating system, see the Available Images documentation the runner images repository.

https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners/about-github-hosted-runners#preinstalled-software

対応

以下のページを参照し、Docker Compose v1 から v2 に移行する必要があります。
https://docs.docker.com/compose/migrate/

今回のケースでは、 docker-compose build コマンドを docker compose build コマンドに書き換えるだけで動くようになりました。

修正前

修正後

path:.github/workflows AND ("docker-compose build" OR "docker-compose pull")」で検索すると、修正が必要なワークフローファイルを確認できます。
https://github.com/actions/runner-images/issues/9557#issuecomment-2033320632
https://docs.github.com/ja/search-github/github-code-search/understanding-github-code-search-syntax

まとめ

今回の問題は、 Docker Compose v1 が非推奨になってからも docker-compose コマンドを使い続けていたのが原因でした。

今回、すぐに気づけた要因は以前に作成した定期的にビルドするワークフローのおかげであり、興味のある方は是非導入してみてください(宣伝)

みなさんも EOL に気を付けながら、ツールを使っていきましょう。

ニフティでは、
さまざまなプロダクトへ挑戦する
エンジニアを絶賛募集中です!
ご興味のある方は以下の採用サイトより
お気軽にご連絡ください!

ニフティに興味をお持ちの方は
キャリア登録をぜひお願いいたします!

connpassでニフティグループに
参加いただくと
イベントの
お知らせが届きます!