ホームページ 運用・保守 Nginx Nginx サーバーのコンテナ化された展開とクラスター管理の詳細なガイド

Nginx サーバーのコンテナ化された展開とクラスター管理の詳細なガイド

Aug 06, 2023 am 11:03 AM
nginx コンテナ化されたデプロイメント クラスター管理

Nginx サーバーのコンテナ化デプロイメントとクラスター管理の詳細ガイド

はじめに:
クラウド コンピューティングとコンテナ テクノロジの発展により、コンテナ化デプロイメントはエンタープライズ アプリケーションの開発とデプロイメントの一般的な方法になりました。高性能 Web サーバーおよびリバース プロキシ サーバーとして、Nginx はコンテナ化を通じて展開および管理することもできます。この記事では、Nginx サーバーをコンテナ化し、クラスター管理によって高可用性を向上させる方法を詳しく紹介します。

1. 準備
まず、Docker 環境をインストールし、Docker サービスが開始されていることを確認する必要があります。次に、Nginx Docker イメージを構築するための Dockerfile ファイルを作成する必要があります。以下は簡単な Dockerfile の例です。

FROM nginx:latest
COPY nginx.conf /etc/nginx/nginx.conf
COPY default.conf /etc/nginx/conf.d/default.conf
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
ログイン後にコピー

この Dockerfile は、まず最新の Nginx イメージをベース イメージとして選択し、次に事前に準備した Nginx 構成ファイルとデフォルトの仮想ホスト構成ファイルをコピーします。最後に、コンテナのポート 80 が公開され、Nginx サーバーがフォアグラウンド モードで実行されます。

2. Docker イメージをビルドする
Dockerfile を準備したら、docker build コマンドを使用して Docker イメージをビルドできます。 Dockerfile を現在のディレクトリに保存すると仮定すると、次のコマンドを使用して Dockerfile をビルドできます。

docker build -t my_nginx .
ログイン後にコピー

このコマンドは、Dockerfile に基づいて my_nginx という名前の Docker イメージをビルドします。ビルドが完了したら、docker image コマンドを使用して既存のイメージ リストを表示し、my_nginx イメージが正常にビルドされたことを確認できます。

3. 単一の Nginx コンテナーを実行する
これで、my_nginx イメージに基づいて Nginx コンテナーを作成し、実行できます。 docker run コマンドを使用して、この操作を実行できます。

docker run -d -p 80:80 my_nginx
ログイン後にコピー

このコマンドは、新しい Nginx コンテナーをバックグラウンドで実行し、コンテナーのポート 80 をホストのポート 80 にマップします。ブラウザから http://localhost にアクセスすると、Nginx サーバーが正しく動作しているかどうかを確認できます。

4. Nginx クラスターの構築
Nginx サーバーの高可用性を向上させるために、Docker のクラスター管理ツールを使用して Nginx クラスターを構築できます。この記事では、Docker Swarm を使用してクラスター管理を実装します。

まず、Swarm 管理ノードを初期化する必要があります。次のコマンドを実行して、現在のノードを Swarm 管理ノードとして設定できます:

docker swarm init
ログイン後にコピー

次に、次のコマンドを実行して 2 つのワーカー ノード (ホスト) を作成できます:

docker swarm join-token worker
ログイン後にコピー

実行後上記のコマンドを実行すると、次のような出力が生成されます:

docker swarm join --token xxxxxxxxxxxxxxxx
ログイン後にコピー
ログイン後にコピー

この出力を使用して、2 つのワーカー ノードを Swarm クラスターに追加する必要があります:

docker swarm join --token xxxxxxxxxxxxxxxx
ログイン後にコピー
ログイン後にコピー

このようにして、 2 つのワーカー ノードが正常に追加されました。Swarm クラスターに参加します。次に、Nginx サービスを作成する必要があります。次のコマンドを使用して、Nginx サービスを作成できます。

docker service create --name nginx --replicas 3 -p 80:80 my_nginx
ログイン後にコピー

このコマンドは、クラスター内に nginx という名前のサービスを作成し、3 つのレプリカを指定します。このサービスは、これらのレプリカを自動的に作成してクラスター内のさまざまなノードに配布し、Nginx クラスターを構築します。 docker service ls コマンドを使用すると、クラスター内のすべてのサービスとそのステータスを表示できます。

5. クラスター管理操作
Nginx クラスターを確立したら、いくつかの基本的なクラスター管理操作を実行できます。

  1. 拡張と縮小
    次のコマンドを使用して、Nginx サービスの拡張と縮小を実現できます:
docker service scale nginx=5
docker service scale nginx=2
ログイン後にコピー

最初のコマンドは nginx サービスです。レプリカの数は 5 に拡張され、2 番目のコマンドはレプリカの数を 2 に減らします。

  1. サービスの更新
    Nginx イメージまたは構成ファイルを更新する必要がある場合、次のコマンドを使用してサービスを更新できます:
docker service update --image my_nginx:latest nginx
ログイン後にコピー

このコマンドは、 update nginx サービスのイメージは最新バージョンです。同様に、 docker service update コマンドを使用して、サービスの他の構成パラメーターを更新することもできます。

  1. サービスのスケーラビリティ管理
    次のコマンドを使用して、サービスのスケーラビリティを表示および管理できます:
docker service ps nginx
docker service inspect --pretty nginx
ログイン後にコピー

最初のコマンドは、すべての nginx サービスのステータスを表示します。 2 番目のコマンドは、ノードの割り当てやレプリカの実行ステータスなど、nginx サービスの詳細情報を表示します。

結論:
展開とクラスター管理のために Nginx サーバーをコンテナ化することで、より高い可用性と柔軟性を実現できます。この記事では、Docker を使用して Nginx イメージを構築し、単一のコンテナーを実行し、Docker Swarm を使用して Nginx クラスターを構築および管理する方法を詳しく紹介します。読者がこの記事を通じて Nginx コンテナーのデプロイメントとクラスター管理について学び、それを実際のシナリオに適用して拡張できるようになることを願っています。

以上がNginx サーバーのコンテナ化された展開とクラスター管理の詳細なガイドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

nginxでクラウドサーバードメイン名を構成する方法 nginxでクラウドサーバードメイン名を構成する方法 Apr 14, 2025 pm 12:18 PM

クラウドサーバーでnginxドメイン名を構成する方法:クラウドサーバーのパブリックIPアドレスを指すレコードを作成します。 NGINX構成ファイルに仮想ホストブロックを追加し、リスニングポート、ドメイン名、およびWebサイトルートディレクトリを指定します。 nginxを再起動して変更を適用します。ドメイン名のテスト構成にアクセスします。その他のメモ:SSL証明書をインストールしてHTTPSを有効にし、ファイアウォールがポート80トラフィックを許可し、DNS解像度が有効になることを確認します。

Dockerコンテナの名前を確認する方法 Dockerコンテナの名前を確認する方法 Apr 15, 2025 pm 12:21 PM

すべてのコンテナ(Docker PS)をリストする手順に従って、Dockerコンテナ名を照会できます。コンテナリストをフィルタリングします(GREPコマンドを使用)。コンテナ名(「名前」列にあります)を取得します。

Nginxが開始されるかどうかを確認する方法 Nginxが開始されるかどうかを確認する方法 Apr 14, 2025 pm 01:03 PM

nginxが開始されるかどうかを確認する方法:1。コマンドラインを使用します:SystemCTLステータスnginx(Linux/unix)、netstat -ano | FindStr 80(Windows); 2。ポート80が開いているかどうかを確認します。 3.システムログのnginx起動メッセージを確認します。 4. Nagios、Zabbix、Icingaなどのサードパーティツールを使用します。

Nginxバージョンを確認する方法 Nginxバージョンを確認する方法 Apr 14, 2025 am 11:57 AM

nginxバージョンを照会できるメソッドは次のとおりです。nginx-vコマンドを使用します。 nginx.confファイルでバージョンディレクティブを表示します。 nginxエラーページを開き、ページタイトルを表示します。

Windowsでnginxを構成する方法 Windowsでnginxを構成する方法 Apr 14, 2025 pm 12:57 PM

Windowsでnginxを構成する方法は? nginxをインストールし、仮想ホスト構成を作成します。メイン構成ファイルを変更し、仮想ホスト構成を含めます。 nginxを起動またはリロードします。構成をテストし、Webサイトを表示します。 SSLを選択的に有効にし、SSL証明書を構成します。ファイアウォールを選択的に設定して、ポート80および443のトラフィックを許可します。

nginxサーバーを開始する方法 nginxサーバーを開始する方法 Apr 14, 2025 pm 12:27 PM

NGINXサーバーを起動するには、異なるオペレーティングシステムに従って異なる手順が必要です。Linux/UNIXシステム:NGINXパッケージをインストールします(たとえば、APT-GetまたはYumを使用)。 SystemCtlを使用して、NGINXサービスを開始します(たとえば、Sudo SystemCtl Start NGinx)。 Windowsシステム:Windowsバイナリファイルをダウンロードしてインストールします。 nginx.exe実行可能ファイルを使用してnginxを開始します(たとえば、nginx.exe -c conf \ nginx.conf)。どのオペレーティングシステムを使用しても、サーバーIPにアクセスできます

Dockerによってコンテナを起動する方法 Dockerによってコンテナを起動する方法 Apr 15, 2025 pm 12:27 PM

Docker Containerの起動手順:コンテナ画像を引く:「Docker Pull [Mirror Name]」を実行します。コンテナの作成:「docker create [options] [mirror name] [コマンドとパラメーター]」を使用します。コンテナを起動します:「docker start [container name or id]」を実行します。コンテナのステータスを確認してください:コンテナが「Docker PS」で実行されていることを確認します。

Docker用のコンテナを作成する方法 Docker用のコンテナを作成する方法 Apr 15, 2025 pm 12:18 PM

Dockerでコンテナを作成します。1。画像を引く:Docker Pull [ミラー名]2。コンテナを作成:Docker Run [Options] [Mirror Name] [コマンド]3。コンテナを起動:Docker Start [Container Name]

See all articles