Docker の作成 Docker Compose は、管理対象コンテナをプロジェクト、サービス、コンテナの 3 つのレイヤーに分割します。 Docker Compose が実行されているディレクトリ内のすべてのファイル (docker-compose.yml、extends ファイル、環境変数ファイルなど) がプロジェクトを形成します。特別なプロジェクト名が指定されていない場合は、現在のディレクトリ名が使用されます。プロジェクトには複数のサービスを含めることができ、各サービスは実行中のコンテナのイメージ、パラメーター、依存関係を定義します。サービスには複数のコンテナ インスタンスを含めることができます。Docker Compose では負荷分散の問題が解決されないため、サービス検出と負荷分散を実現するには他のツールが必要です。 Docker Composeをインストールする docker-compose-linux-x86_64 を入手して /bin ディレクトリに配置し、ソフトリンクを作成して実行権限を追加します。 chmod +x docker-compose-linux-x86_64 docker-compose は、Linux で実行できます。 後続の負荷分散テストを容易にするために、haproxy と nginx をインポートします。 docker load -i haproxy docker load -i nginx /tmp/にcompose設定ファイルを書き込む [root@foundation50 compose]#vim docker-compose.yml httpdサービスを作成してインストールし、web1 httpdサービスでhttpdファイルを起動します。 [root@foundation50 compose]#vim web1/Dockerfile rhel7:v1より エクスポーズ80 yum install -y httpdを実行します index.html /var/www/html を追加します。 CMD ["/usr/sbin/httpd","-D","フォアグラウンド"] haproxyでhaproxy.cfg設定ファイルを作成する チェック haproxy 統計を表示 172.25.50.1 にアクセス 健康チェック web3をシャットダウン ドッカースウォーム 3台の仮想マシンを準備する server1、server2、server3にDockerをインストールし、サービスを開始します。 1 つのノードで docker swarm init を実行し、他のノードで join コマンドを実行する必要があります。 [root@server1 ~]# docker swarm 初期化 [root@server2~]#docker swarm に参加\ >--tokenSWMTKN-1-51igcdpg4cbgaokq535qis01osel396of153sdlp8k0ljn0rou-2m9sltwkc4uq1vfmp79ous0e4 \ > 172.25.50.2:2377 このノードはワーカーとしてスウォームに参加しました。 server1のノードステータスを確認する 以前にNginxをインポートし、その後flsakを3台のマシンにインポートしました [root@server1 ~]# docker load -i flask.tar [root@server2 ~]# docker load -i flask.tar [root@server3 ~]# docker load -i flask.tar 異なるバックエンドの負荷分散を区別するために、ホスト名を示すステートメントをPythonで記述し、FlaskとOSにインポートします。 フラスコイメージを開き、demo.pyスクリプトをルートの下に置きます。 提出する [root@server1 python]# docker commit vm1 python:demo flaskという名前のクラスターを作成し、3つのバックエンドサービスノードを起動し、Pythonでdemo.pyスクリプトを読みます。 テスト [root@foundation50 docker]# for i in {1..10}:do curl -w "\n" http://172.25.50.1;完了 サーバーが3台あるため、3回ごとにポーリングが完了し、負荷分散が実現されます。 Docker swarm ビジュアル Web 監視インターフェース 画像をインポートして作成する [root@server1 ~]# docker load -i visualizer.tar [root@server1 ~]# docker サービス作成 --name=viz --publish=8080:8080/tcp --constrain=node.role==manager --mount=type=bind,src=/var/run/docker.sock,dst=/var/run/docker.sock dockersamples/visualizer 監視ページを表示 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 |
<<: MAC で MySQL の初期パスワードを変更する方法
環境に関する声明ホストOS: Cetnos7.9 最小インストールdocker バージョン: 20....
Docker は多くのスペースを占有します。コンテナを実行したり、イメージを取得したり、アプリケー...
Linux インストール JDK1.8 手順1. CentOS に独自の openJDK があるかど...
NetEase Blog で HTML を使用する場合、テンプレートに直接コードを追加できることは...
この記事では、Vueログイン用画像認証コードの具体的なコードを例として紹介します。具体的な内容は以下...
<area> タグは、イメージ マップ内の領域を定義します (注: イメージ マップはク...
1. ポジショニングとは何ですか? CSS の position 属性には、absolute/re...
一般的な書き方は次のとおりです。 XML/HTML コードコンテンツをクリップボードにコピー<...
1. イベントが有効になっているかどうかを確認する'%sche%' のような変数を表...
<a> タグは主に、ハイパーリンクまたはアンカー リンクとも呼ばれるリンクとブックマーク...
1. Webプロジェクトを作成したら、Tomcatを例にサーバーを構成する必要があります。 2. 実...
プロセスで使用されていて、誤って削除されたファイルがある場合、それらを回復することができます。プロセ...
1. ランナーコンテナを作成する mk@mk-pc:~/Desktop$ docker run -d...
少し前にSQLの独学を終え、MySQL 8.0.17をダウンロードしました。インストールして設定した...
CocosCreator バージョン 2.3.4ドラゴンボーンアニメーションキールアニメーションを ...