KubernetesやSwarmを使わず、WireGuardメッシュ経由で自前のDockerホスト間にコンテナアプリをデプロイし、スケールできます。
docker/compose
単一のComposeファイルでマルチコンテナDockerアプリケーションを定義し、実行するCLIツール。
- スター
- 38,466
- フォーク
- 5,883
- 未解決の Issue
- 103
- 最終コミット
- 3 日前
これは何?
Docker Composeを使うと、Webサーバー、データベース、キャッシュなど、アプリケーションを構成するコンテナをCompose仕様に準拠したYAMLファイルで記述できます。`docker compose up`を実行すると、すべてのサービスをまとめて作成・起動できるため、複数の`docker run`コマンドを個別に実行する代わりに、1つのコマンドでマルチサービス環境を立ち上げられます。
Composeファイルでは、各コンテナのビルド方法や取得元、使用するポートとボリューム、サービス間の接続方法を定義します。プロジェクトはGoで書かれており、Docker CLIプラグインとして提供されるため、通常のDocker CLIと合わせて`docker compose`コマンドを利用できます。WindowsおよびmacOS向けのDocker Desktopに含まれているほか、Linux向けにはスタンドアロンバイナリが公開されています。
READMEによると、旧バージョンのPython実装はv1ブランチにあります。また、Docker SwarmはDocker Inc.の社外で保守されているため、Composeの機能アップデートは今後提供されません。
主な機能
- 01Compose仕様に準拠した単一のYAMLファイルで、マルチコンテナアプリケーションを定義できます。
- 02`docker compose up`などの1つのコマンドで、アプリ内のすべてのサービスを起動、停止、再ビルドできます。
- 03各サービスのイメージをDockerfileからビルドするか、レジストリから取得できます。
- 04Windows、macOS、Linuxで動作し、Docker Desktopに同梱されるほか、スタンドアロンバイナリでも利用できます。
ユースケース
- 開発者のノートPCで、Webアプリをデータベースやキャッシュと一緒に実行する。
- 共有のComposeファイルを使って、チームで再現可能なローカル環境を構築する。
- テストスイートの実行前に、統合テストに必要な依存サービスを起動する。
クイックスタート
- 1
Windows または macOS では Docker Desktop 経由で Docker Compose をインストールします
- 2
Linux ではリリースページからバイナリをダウンロードし、CLI plugins フォルダーに配置します
- 3
compose.yaml ファイルでサービスを定義し、アプリを起動します
docker compose up
使う前に知っておきたいこと
- Python ベースの v1 バージョンはレガシーブランチでのみ利用できます。
- Docker Swarm のユーザーは、Compose のすべての機能を利用できない場合があります。
収録されている特集
トピック
よくある質問
- compose とは?
- 単一のComposeファイルでマルチコンテナDockerアプリケーションを定義し、実行するCLIツール。 Docker Composeを使うと、Webサーバー、データベース、キャッシュなど、アプリケーションを構成するコンテナをCompose仕様に準拠したYAMLファイルで記述できます。`docker compose up`を実行すると、すべてのサービスをまとめて作成・起動できるため、複数の`docker run`コマンドを個別に実行する代わりに、1つのコマンドでマルチサービス環境を立ち上げられます。
- compose は無料で使えますか?ライセンスは?
- compose は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- compose は今もメンテナンスされていますか?
- 活発にメンテナンス中。compose の最終コミットは 2026年10月22日 です。
- compose は何に使えますか?
- 開発者のノートPCで、Webアプリをデータベースやキャッシュと一緒に実行する。 共有のComposeファイルを使って、チームで再現可能なローカル環境を構築する。 テストスイートの実行前に、統合テストに必要な依存サービスを起動する。
- compose のインストール方法は?
- Windows または macOS では Docker Desktop 経由で Docker Compose をインストールします Linux ではリリースページからバイナリをダウンロードし、CLI plugins フォルダーに配置します compose.yaml ファイルでサービスを定義し、アプリを起動します: docker compose up
- compose はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/docker/compose
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
本番環境で、さまざまな環境にまたがるKubernetesクラスターを運用するためのオープンソースコンテナ管理プラットフォーム。
プロセス、ポート、コンテナ、ファイルを起点までたどり、起動したシステムの連鎖を明らかにするCLI/TUIです。
複数のホストにまたがるコンテナ化アプリケーションのデプロイ、スケーリング、管理を行うオープンソースシステム。
Dockerコンテナ、イメージ、Composeスタックを管理する、モダンなセルフホスト型Web UI。
オンプレミスとクラウドのインフラ全体で、コンテナ、VM、レガシーバイナリをスケジュールして実行するワークロードオーケストレーターです。