導入Docker-Compose プロジェクトは、Docker コンテナ クラスターの迅速なオーケストレーションを実現することを目的とした、Docker の公式オープン ソース プロジェクトです。 Compose を使用すると、ユーザーは単一の docker-compose.yml テンプレート ファイル (YAML 形式) を通じて、関連するアプリケーション コンテナーのグループをプロジェクトとして定義できます。 Docker-Compose プロジェクトは Python で記述されており、Docker サービスによって提供される API を呼び出してコンテナを管理します。したがって、オペレーティング プラットフォームが Docker API をサポートしている限り、Compose をオーケストレーション管理に使用できます。 Docker-Compose は、管理対象コンテナをプロジェクト、サービス、コンテナの 3 つのレイヤーに分割します。 Docker-Compose 実行ディレクトリ内のすべてのファイル (docker-compose.yml、extends ファイル、環境変数ファイルなど) がプロジェクトを形成します。特別なプロジェクト名が指定されていない場合は、現在のディレクトリ名が使用されます。プロジェクトには複数のサービスを含めることができ、各サービスは実行中のコンテナのイメージ、パラメーター、依存関係を定義します。サービスには複数のコンテナ インスタンスを含めることができます。Docker-Compose では負荷分散の問題が解決されないため、サービス検出と負荷分散を実現するには他のツールが必要です。 Docker-Compose のデフォルトのプロジェクト構成ファイルは docker-compose.yml です。環境変数 COMPOSE_FILE または -f パラメータを使用して構成ファイルをカスタマイズできます。複数の依存サービスと各サービスを実行するコンテナを定義します。 一般的なコマンド docker-compose 導入Compose の役割は、「複数の Docker コンテナでアプリケーションを定義して実行すること」です。 Compose を使用すると、アプリケーションのサービスを構成ファイル (yaml 形式) で構成し、構成で参照されるすべてのサービスを 1 つのコマンドで作成して起動できます。 Docker ComposeのインストールCompose をインストールする方法は多数あります。この記事では、シェル経由でインストールする方法について説明します。他の設置方法にご興味がございましたら、 Docker Composeのインストール手順GitHubリンクからダウンロードしてインストールしてください。非ROOTユーザーはsudoを追加することを忘れないでください sudo curl -L "https://github.com/docker/compose/releases/download/1.25.5/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose バイナリダウンロードファイルに実行権限を与える sudo chmod +x /usr/local/bin/docker-compose インストールを確認する docker-compose --version アンインストールバイナリパッケージとしてインストールされている場合は、バイナリファイルを削除するだけです rm /usr/local/bin/docker-compose ディレクトリ構造作曲する ドッカーの作成 ユーレカ Dockerファイル eureka-server-2.0.2.RELEASE.jar ユーザー Dockerファイル ユーザー 2.0.2.RELEASE.jar 力 Dockerファイル パワー 2.0.2.RELEASE.jar 例Compose の使い方は非常に簡単です。docker-compose.yml ファイルを記述し、docker-compose コマンドを使用するだけです。 docker-compose.yml はコンテナの構成を記述し、docker-compose コマンドはコンテナの操作を記述します。 ドッカーの作成 version: '3.1' #ここでは、docker-compose サービスに対応する docker バージョンを指定する必要があります。 jenkinstest: #サービス名を指定します#image: jenkinstest #イメージ名は小文字で指定します。そうしないとエラーが報告されますbuild: ./jenkinsTest #Dockfile が配置されているパスを指定しますports: - 8099:8099 #ポートマッピング公開を指定します: - 8099 #公開されたサービスポート Dockerファイル adoptopenjdk/openjdk8:jdk8u-centos-nightly より #著者MAINTAINER lkz # イメージによって公開されるポート。ポートを使用する場合は、docker run コマンド EXPOSE 8099 を実行するときに -p を使用して有効にします。 jenkinsTest.jar 11.jarをコピーする # イメージがコンテナとして実行された後に実行されるコマンド ENTRYPOINT ["java","-jar","11.jar"] マイクロサービスを開始するには、パラメータ-dを追加してバックグラウンドで開始することができます。docker-compose を起動 -d Docker Compose を使用して SpringCloud マイクロサービスをオーケストレーションするdocker-compose.ymlファイルを上記のように修正します。 バージョン: '3.3' サービス: ユーレカ: image: eureka:v1 #イメージ名を指定します build: ./eureka #Dockfileが配置されているパスを指定します ports: - 8080:8080 ユーザー: 画像: ユーザー:v1 build: ./user #Dockfile が配置されているパスを指定します ports: -8081:8081 力: 画像: パワー:v1 build: ./power #Dockfileが配置されているパスを指定しますports: -8082:8082 docker-compose イメージ公開 springboot プロジェクトのプロセス分析に関するこの記事はこれで終わりです。より関連性の高い docker-compose 公開 springboot プロジェクトのコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後も 123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: DHTML オブジェクト (さまざまな HTML オブジェクトの共通プロパティ)
>>: MYSQL(電話番号、IDカード)データ非感応化の実装
日常の運用・保守作業では、nginx サービスが頻繁に使用され、nginx の高同時実行性によって生...
コア資産管理プロジェクトでは、el-transfer にドラッグ アンド ドロップによる並べ替えと、...
この記事では、プログレスバー効果を実現するためのJavaScriptの具体的なコードを参考までに紹介...
1. 同じIPアドレス、異なるポート番号仮想ホスト 1: ホスト IP アドレスは 172.16.3...
ウェブページに403 Forbiddenと表示されるNginx (yum インストール ログは通常 ...
この記事では、Ubuntu 18.04 に Redis と phpredis 拡張機能をインストール...
列ベースの Web デザインのインスピレーションをお探しの場合は、32 個のクラシックな列/グリッド...
目次序文1. GMT GMTとはGMTの歴史2. UTC UTCとはUTC は次の 2 つの部分で構...
CSS のアニメーション部分は JS によってブロックされますが、transform のアニメーショ...
Docker入門Docker はオープンソースのアプリケーション コンテナ エンジンです。従来の仮...
目次背景成し遂げるvue-cli2.0での設定方法の補足要約する背景プロジェクトにはローカル構成ファ...
システムをインタラクティブに監視したい場合は、htop コマンドが最適な選択肢の 1 つです。 ht...
目次K8Sの高度な機能高度な機能要約するkubectl サービスの問題のトラブルシューティングK8S...
序文私は less/sass を書くことに慣れていますが、小さなプログラムを開発するときには、まだ ...
mysql ユーザーを作成し、承認します。形式: 「ユーザー パスワード」で識別されるユーザー@ログ...