プラグイン ファイルの目的:
-
このファイルは Docker イメージ ファイルによってバインドされていません。変更したり、コンテナーを再起動したり、ファイルを更新したりできます。イメージでは復元されません
コンテナの実行中に記録されたログやその他の情報などのファイルは、外部ストレージに自動的に保存され、失われることはありませんコンテナを再起動するため
- docker run コマンド
- docker-compose コマンド
├── build.sh
├── docker-compose.yml
├── Dockerfile
├── mynginx.conf
├── nginx-vol
│ ├── conf.d
│ │ └── mynginx.conf
│ ├── html
│ │ └── index.html
│ └── logs
│ ├── access.log
│ └── error.log
└── run.sh
Dockerfile はイメージを構築するための構成ファイルであり、内容は次のとおりです。 FROM nginx LABEL maintainer="xxx" email="<xxx@xxx.com>" app="nginx test" version="v1.0" ENV WEBDIR="/data/web/html" RUN mkdir -p ${WEBDIR} EXPOSE 5180Based on nginx の場合、新しいデータ ファイル パスを /data/web/html として指定し、公開ポートは 5180 です。 次のコマンドを使用して新しいイメージをコンパイルします:
docker build -t nginx:test-v1 .
コンパイルされたイメージ タグは test-v1 で、ローカル イメージを表示できます: docker images REPOSITORY TAG IMAGE ID CREATED SIZE nginx test-v1 d2a0eaea3fac 56 minutes ago 141MB nginx latest 605c77e624dd 9 days ago 141MBTAG はテストです。v1 イメージはコンパイルされたばかりの新しいイメージです。 nginx 外部ボリューム nginx-vol と関連する conf.d、logs、html フォルダーを作成し、対応するコンテンツを対応するディレクトリに配置します。たとえば、html フォルダー内の iindex.html の内容は次のとおりです。
<html> <head> <meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> <title>系统时间</title> <body> <div id="datetime"> <script> setInterval("document.getElementById('datetime').innerHTML=new Date().toLocaleString();",1000); </script> </div> </body> </head> </html>は、実際には現在時刻を表示する単なるページです。 ログ セクションは空です。コンテナの実行中にログを外部ストレージに書き込むことが目的です。コンテナが停止したり、イメージが破壊された場合でも、実行ログは保持されます。以下の conf.d は nginx の個人用設定で、内容は次のとおりです:
server { listen 5180; #listen [::]:5180; server_name localhost; #access_log /var/log/nginx/host.access.log main; location / { root /data/web/html; index index.html index.htm; } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; # proxy the PHP scripts to Apache listening on 127.0.0.1:80 #location ~ \.php$ { # proxy_pass http://127.0.0.1; #} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # root html; # fastcgi_pass 127.0.0.1:9000; # fastcgi_index index.php; # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; # include fastcgi_params; # deny access to .htaccess files, if Apache's document root # concurs with nginx's one #location ~ /\.ht { # deny all; }実際、ポートとルート パスは nginx のデフォルトの default.conf に基づいて変更されます。目的は次のとおりです。 nginx の図解 構成ファイルは外部に保存することもできます。独自のプログラムで構成ファイルを変更できる場合、この方法でコンテナの実行中に構成ファイルを変更できます。変更された構成ファイルは実際には外部ストレージに保存されます。コンテナーの実行が停止すると消え、イメージ内のファイルには復元されません。 docker run モード便宜上、実行コマンドを run.sh などのシェル スクリプトに書き込むことができます。内容は次のとおりです。
docker run --name nginx-v1 -p 15180:5180 -v /home/project/nginx-test/nginx-vol/logs:/var/log/nginx -v /home/project/nginx-test/nginx-vol/conf.d:/etc/nginx/conf.d -v /home/project/nginx-test/nginx-vol/html:/data/web/html -d nginx:test-v1コマンドに 3 があることを確認してください。各 -v は異なる外部ストレージ マウントに対応し、コンテナ内の異なるディレクトリにマップされます。 -p の後のポート (小文字であることに注意してください) は、それぞれホスト ポートとコンテナ ポートです。つまり、ホストのポート 15180 はコンテナのポート 5180 にマッピングされるため、nginx サービス ポート 5180コンテナによって開始されたホストには、ホストのポート 15180 がマッピングされています。 実行中のコンテナの表示:
docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES cf2275da5130 nginx:test-v1 "/docker-entrypoint.…" 6 seconds ago Up 5 seconds 80/tcp, 0.0.0.0:15180->5180/tcp, :::15180->5180/tcp nginx-v1詳細なマッピング ビュー:
docker inspect nginx-v1完全な情報が表示され、完全なストレージ マウント マッピングが「マウント」セクションで確認できます。状態。 ホストの nginx-vol/logs の直下を確認すると、コンテナ内の nginx 実行ログが外部ホストのストレージに自動的に書き込まれていることがわかります。
ls -l nginx-vol/logs/ total 12 -rw-r--r-- 1 root root 1397 1月 8 15:08 access.log -rw-r--r-- 1 root root 4255 1月 8 15:59 error.logコンテナの停止:
docker stop nginx-v1コンテナの削除:
docker rm nginx-v1docker-compose modedocker-compose のインストール
apt-get install docker-composedocker の書き込み-compose.yml file
version: "3" services: nginx: container_name: mynginx image: nginx:test-v1 ports: - 80:5180 volumes: - ./nginx-vol/html:/data/web/html - ./nginx-vol/logs:/var/log/nginx - ./nginx-vol/conf.d:/etc/nginx/conf.d restart: alwayscontainer_name: コンテナ名を指定しますimage: 使用するイメージと対応するラベルports: ホスト ポートとコンテナ ポートのマッピング
ボリューム: 外部ストレージ マウント マッピングコンテナの開始
docker-compose up -d Creating network "nginxtest_default" with the default driver Creating mynginx ... Creating mynginx ... doneコンテナの表示
docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 635e2999c825 nginx:test-v1 "/docker-entrypoint.…" 24 seconds ago Up 22 seconds 80/tcp, 0.0.0.0:80->5180/tcp, :::80->5180/tcp mynginxコンテナが docker に従って実行されていることがわかります。 compose.yml の設定、ポート、名前、マウントはすべて正常です。ホストのポート 80 へのアクセスは、コンテナーの 5180 サービスに対応します。 コンテナを停止します
docker-compose down Stopping mynginx ... done Removing mynginx ... done Removing network nginxtest_defaultご覧のとおり、docker-compose を使用する方が簡単です。
以上がDocker に nginx プラグイン ファイルをインストールする方法は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

nginxunitは、多言語プロジェクトや動的な構成要件に適した、apachetomcat、gunicorn、node.jsビルトインHTTPサーバーよりも優れています。 1)複数のプログラミング言語をサポートします。2)動的な構成リロード、3)高いスケーラビリティと信頼性を必要とするプロジェクトに適した組み込みの負荷分散機能を提供します。

Nginxunitは、モジュラーアーキテクチャと動的な再構成機能により、アプリケーションのパフォーマンスと管理性を向上させます。 1)モジュラー設計には、マスタープロセス、ルーター、アプリケーションプロセスが含まれ、効率的な管理と拡張をサポートします。 2)動的再構成により、CI/CD環境に適した、実行時に構成をシームレスに更新できます。 3)多言語サポートは、言語ランタイムの動的なロードを通じて実装され、開発の柔軟性が向上します。 4)イベント駆動型モデルと非同期I/Oによって高性能が達成され、高い並行性の下でも効率的なままです。 5)申請プロセスを分離し、アプリケーション間の相互の影響を減らすことにより、セキュリティが改善されます。

nginxunitを使用して、アプリケーションを複数の言語で展開および管理できます。 1)nginxunitをインストールします。 2)PythonやPHPなどのさまざまなタイプのアプリケーションを実行するように構成します。 3)アプリケーション管理に動的構成関数を使用します。これらの手順を通じて、アプリケーションを効率的に展開および管理し、プロジェクトの効率を向上させることができます。

NGINXは、高い並行接続の処理に適していますが、Apacheは複雑な構成とモジュール拡張が必要なシナリオにより適しています。 1.Nginxは、高性能と低リソース消費で知られており、高い並行性に適しています。 2. Apacheは、その安定性とリッチモジュール拡張機能で知られています。これは、複雑な構成ニーズに適しています。

Nginxunitは、動的な構成と高性能アーキテクチャにより、アプリケーションの柔軟性とパフォーマンスを向上させます。 1.動的構成により、サーバーを再起動せずにアプリケーション構成を調整できます。 2.高性能は、イベント駆動型および非ブロッキングアーキテクチャおよびマルチプロセスモデルに反映され、同時接続を効率的に処理し、マルチコアCPUを利用できます。

NginxとApacheはどちらも強力なWebサーバーであり、それぞれがパフォーマンス、スケーラビリティ、効率の点で独自の利点と短所を備えています。 1)nginxは、静的なコンテンツを処理し、逆プロキシを逆にするときにうまく機能します。 2)Apacheは、動的コンテンツを処理するときにパフォーマンスが向上し、リッチモジュールサポートが必要なプロジェクトに適しています。サーバーの選択は、プロジェクトの要件とシナリオに基づいて決定する必要があります。

Nginxは、高い並行リクエストの処理に適していますが、Apacheは複雑な構成と機能的拡張が必要なシナリオに適しています。 1.Nginxは、イベント駆動型の非ブロッキングアーキテクチャを採用しており、高電流環境に適しています。 2。Apacheはプロセスまたはスレッドモデルを採用して、複雑な構成のニーズに適したリッチモジュールエコシステムを提供します。

Nginxは、Webサイトのパフォーマンス、セキュリティ、およびスケーラビリティを改善するために使用できます。 1)逆プロキシおよびロードバランサーとして、Nginxはバックエンドサービスを最適化し、トラフィックを共有できます。 2)イベント駆動型および非同期アーキテクチャを通じて、nginxは高い並行接続を効率的に処理します。 3)構成ファイルでは、静的ファイルサービスやロードバランシングなどのルールの柔軟な定義を可能にします。 4)最適化の提案には、GZIP圧縮の有効化、キャッシュの使用、およびワーカープロセスの調整が含まれます。


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

SublimeText3 英語版
推奨: Win バージョン、コードプロンプトをサポート!

メモ帳++7.3.1
使いやすく無料のコードエディター

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

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境
