0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

'docker-compose'より'docker compose'を使うべき?

Posted at

#調べたきっかけ
docker-compose upを行った際に、以下のメッセージが。

> docker-compose up
Docker Compose is now in the Docker CLI, try `docker compose up`

Google翻訳:
Docker ComposeがDockerCLIに追加されました。`docker compose up`を試してください。

###言われたので、試してみる

同様にDocker Composeが使用できているが、何が違うのかいまいちわからない...。

> docker compose up

[+] Running 4/4
 - Container hoge_db_1       Recreated                                                                                                                                     
 - Container hoge_mailhog_1  Recreated                                                                                                                                     
 - Container hoge_php_1      Recreated                                                                                                                                     
 - Container hoge_nginx_1    Recreated  

#バージョン

> docker --version
Docker version 20.10.6

> docker-compose --version
docker-compose version 1.29.1

> docker compose version
Docker Compose version 2.0.0-beta.1

#結論
Docker ComposeのV2が開発中であり、V2ではCLIで'docker-compose'コマンドの機能のほとんどを引き継いだ'docker compose'コマンドが使用できる

Ver3.2.1以降のDockerDesktopではDockerCLIとともに新しい'docker compose'コマンドが含まれているため、個別にDocker Compose V2をインストールしなくても今回のようなメッセージが出力されるようです。

The new Compose V2, which supports the compose command as part of the Docker CLI, is now available as a beta version. Compose V2 seamlessly integrates compose functions into the Docker platform, continuing to support most of the previous docker-compose features and flags. You can test the Compose V2 today, by simply replacing the dash (-) with a space, and running docker compose, instead of docker-compose.

As Docker Compose V2 is in beta, we recommend that you extensively test before using it in production environments.

訳:DockerCLIの一部としてcomposeコマンドをサポートする新しいComposeV2が、ベータ版として利用可能になりました。Compose V2は、作成機能をDockerプラットフォームにシームレスに統合し、以前のdocker-compose機能とフラグのほとんどを引き続きサポートします。ダッシュ(-)をスペースに置き換えてdocker composeを代わりにを実行するだけで、ComposeV2をテストできます。

Docker Compose V2はベータ版であるため、本番環境で使用する前に徹底的にテストすることをお勧めします。

引用元:https://docs.docker.com/compose/cli-command/

#結局どっちを使うべきなのか
###まだdocker-composeで良い(と思う)

引用の通り、V2のdocker composeコマンドはまだベータ版であり、本番環境でいきなり使用することは推奨されていません...。

Docker Compose V2の追加機能としては

ComposeV2はプロファイルやGPUデバイス、Appleシリコンなどをサポートします。

と、あり新規追加されるそれらの機能を利用する人/メリットが享受できる人はV2を使用するべきなのでしょう。

それがどう役に立つのかわからない・それらの機能を利用しないであろう自分のような人は、急いで乗り換える必要はないように感じます。

#おまけ

記事を書くにあたりリリースノートを見たところ、最新Verの1.29.2に以下の記載がありました。

1.29.2
(2021-05-10)

upコマンド内においてdocker compose利用を促す説明を削除しました。

頑張って記事にまとめたのですが、最新VerのDocker Composeを使っていれば記事の頭にある「docker composeコマンドを試してね!」というメッセージは出なくなってしまったようです。笑

0
0
0

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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?