|
今日はdocker-composeの使い方を紹介し、意見交換をしたいと思います! 1. はじめにdocker-compose は、複数の Docker コンテナを定義および管理するために Docker が提供するオープンソースのコンテナ オーケストレーション ツールです。 YML ファイルを使用してアプリケーションに必要なすべてのサービスを構成し、その後、docker-compose を使用してコマンドを実行し、YML ファイルを解析して構成し、ファイルに構成されているすべての Docker サービスを作成して起動することができます。 docker-compose は、自動化された運用・保守コマンド用のパッケージ化されたスクリプトのコレクションと考えることができます。スクリプトが正しく記述されていれば、単一のコマンドを実行するだけで、関連するすべてのサービスを起動できます。 GitHub: https://github.com/docker/compose。 2. Docker Composeの利点運用コストの削減:高い展開効率、制御可能なコンテナの起動順序、迅速なプロジェクト移行、開発環境と本番環境間の一貫性。 典型的なシステムのデプロイメントには、Tomcat、MySQL、Redis、Nginx、MongoDBなどのアプリケーションが含まれます。コンテナ化されると、10個以上のコンテナ(小規模から中規模のプロジェクトの場合)が必要になる場合があります。各コンテナを個別に管理するのは非常に面倒で、コンテナごとに数十ものコマンドが必要になる可能性があり、効率が非常に低下します。Docker Composeを使用すると、スクリプトを事前に記述できるため、わずか数分でデプロイメントを完了できます。これにより、従来のデプロイメント方法と比較して効率が大幅に向上します。さらに、単一のスクリプトから複数のデプロイメントを実行できます。 オープンソースプロジェクトのプロモーション:オープンソースプロジェクトの作者はdocker-composeスクリプトを作成できるため、ユーザーは環境を迅速に構築し、ハードウェア条件に起因するさまざまなプロジェクトエラーを回避できます。これにより、オープンソースプロジェクトのプロモーションも促進されます。 3. 原則docker-compose プロジェクトは Python で記述されています。基本的には、Docker サービスが提供する API を呼び出してコンテナを管理します。そのため、オペレーティングシステム プラットフォームが Docker API をサポートしていれば、Compose を使用してコンテナのオーケストレーションと管理を行うことができます。 プロセス: Dockerfile を使用してランタイム環境を定義する → docker-compose.yml を使用してアプリケーションを構成するサービスを定義する → docker-compose up を実行してアプリケーションを起動します。 4. インストールチュートリアル(1)バイナリインストール(国内ミラー推奨)これは公式アドレスであるため、速度が遅くなる可能性があります。国内のミラーアドレスのご利用をお勧めします。 sudo curl -L "https://github.com/docker/compose/releases/download/1.29.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose 国内ミラーアドレスsudo curl -L https://get.daocloud.io/docker/compose/releases/download/1.29.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose 検証方法ダウンロード後、`/usr/local/bin` ディレクトリに `docker-compose` ファイルが含まれているかどうかを確認します。 # バージョン番号を確認します。バージョン番号が表示されている場合は、インストールは成功しています。 アンインストールsudo rm /usr/local/bin/docker-compose (2)Python pipでインストールするyum -y epel-release をインストール アンインストールsudo pip アンインストール docker-compose 5. よく使われるコマンド以下は、よく使用される docker-compose コマンドのリストです。 注:ほとんどの compose コマンドは、docker-compose.yml ファイルが配置されているディレクトリで実行する必要があります。 docker-compose -h # ヘルプを表示 6. 例新しい docker-compose.yml ファイルを作成してください。これは単なる簡単な例です。より詳細な例については、ご自身でご確認ください。 バージョン: '1' YAML 構文チェック: https://www.toyaml.com/index.html webapp ディレクトリを作成し、docker-compose.yaml ファイルを webapp ディレクトリにコピーし、docker-compose を使用してアプリケーションを起動します。 docker-compose up -d アクセステスト: http://127.0.0.1:8081 http://127.0.0.1:8082 . 7. まとめDocker Composeは、小規模から中規模のプロジェクトのデプロイに適しています。分散デプロイ環境を構築する必要がある場合は、SwamまたはKubernetesの使用をお勧めします。学習や研究のために単一マシン環境にのみデプロイするプロジェクトには、Docker Composeが適しています。 |