Dockerでnginxを実行し、ローカルディレクトリをイメージにマウントする方法

Dockerでnginxを実行し、ローカルディレクトリをイメージにマウントする方法

1 hupからイメージを取得する

docker プル nginx

2 マウントするディレクトリを作成する

mkdir -p /data/nginx/{conf,conf.d,html,logs}

3 コンテナを起動する前に設定ファイルが必要です

3.1 vim /data/conf/nginx.conf

ユーザー nginx;
ワーカープロセス 1;

error_log /var/log/nginx/error.log 警告;
pid /var/run/nginx.pid;


イベント {
  ワーカー接続 1024;
}


http {
  /etc/nginx/mime.types を含めます。
  デフォルトタイプ アプリケーション/オクテットストリーム;

  log_format main '$remote_addr - $remote_user [$time_local] "$request" '
           '$status $body_bytes_sent "$http_referer" '
           '"$http_user_agent" "$http_x_forwarded_for"';

  access_log /var/log/nginx/access.log メイン;

  ファイル送信オン;
  #tcp_nopush オン;

  キープアライブタイムアウト65;

  #gzip オン;

  /etc/nginx/conf.d/*.conf を含めます。
}

3.2 vim /data/nginx/conf.d/default.conf

サーバー{ 
  聞く 80; 
  server_name ローカルホスト; 
 
  #文字セット koi8-r; 
  #access_log /var/log/nginx/log/host.access.log メイン; 
 
  位置 / { 
    ルート /data/nginx/html; 
    # ルート /usr/nginx/html; 
    インデックス index.html index.htm; 
    自動インデックスオン; 
  try_files $uri /index/index/page.html; 
    #try_files $uri /index/map/page.html; 
  } 
 
  #エラーページ 404 /404.html; 
 
  # サーバーのエラーページを静的ページ /50x.html にリダイレクトします 
  # 
  エラーページ 500 502 503 504 /50x.html; 
  場所 = /50x.html { 
    ルート /usr/share/nginx/html; 
  } 
 
  # PHP スクリプトを 127.0.0.1:80 で listen している Apache にプロキシします 
  # 
  #場所 ~ \.php$ { 
  # プロキシパス http://127.0.0.1; 
  #} 
 
  # PHP スクリプトを 127.0.0.1:9000 で待機している FastCGI サーバーに渡します 
  # 
  #場所 ~ \.php$ { 
  #ルートhtml; 
  #fastcgi_pass 127.0.0.1:9000; 
  # fastcgi_index インデックス.php; 
  # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; 
  #fastcgi_params を含めます。 
  #} 
 
  # Apacheのドキュメントルートが.htaccessファイルへのアクセスを拒否する 
  # nginxのものと一致します 
  # 
  #場所 ~ /\.ht { 
  # すべて拒否; 
  #} 
}

4 コンテナを起動する

#コンテナ内の nginx のポート 80 をローカルのポート 81 にマップします。docker run --name nginx81 -d -p 81:80 -v /data/nginx/html:/usr/share/nginx/html -v /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /data/nginx/logs:/var/log/nginx -v /data/nginx/conf.d:/etc/nginx/conf.d -d nginx:latest

5 起動したコンテナを表示する

[root@dc01 ~]# docker ps
コンテナID イメージ コマンド 作成ステータス ポート名
fa56f865bd26 nginx:latest "nginx -g 'daemon of..." 4 週間前 3 秒前にアップ 0.0.0.0:80->80/tcp vigilant_swirles
[root@dc01 ~]#

6 Webページアクセス nginx

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Docker で nginx の https を設定する方法
  • Docker に nginx をインストールし、https 経由でアクセスを構成する方法
  • Dockerでnginxをデプロイし、設定ファイルを変更する方法
  • nginxはdockerコンテナ内に設定ファイルを自動的に生成します
  • docker で nginx+php+mysql を設定する方法
  • Docker nginxのインストールと設定方法
  • Docker nginx + https サブドメイン設定の詳細なチュートリアル

<<:  Windows 10 で MySQL を完全に削除してアンインストールする方法

>>:  JavaScript を使用してタイムラインとアニメーション効果を実装するためのサンプル コード (フロントエンドのコンポーネント化)

推薦する

VSCode+CMake+Clang+GCC 環境構築チュートリアル (Win10 の場合)

大学院入試に備えて、C/C++ を使って基本的なデータ構造とアルゴリズムを実装する予定です。アルゴリ...

Nginx でファイル ホットリンク保護サービスを構築する方法を学ぶ例

序文多くのサイトが、ポイントやゴールドコインなど、情報のダウンロードに料金を請求していることは誰もが...

MySQL 5.7.23 解凍バージョンのインストールチュートリアル(画像とテキスト付き)

MySQLインストーラをダウンロードする公式ダウンロードアドレス: http://dev.mysq...

Linuxロスレス展開方法

概要クラウド プラットフォームのお客様のサーバーでは、業務量が拡大し続けるとディスク容量が不足する場...

HTMLチェックボックス説明テキストをクリックして状態を選択/チェック解除します

Web 開発では、チェックボックスは小さく、ユーザーにとって操作があまり便利ではないため、ユーザーが...

リアルタイムコンピューティングフレームワークFlinkクラスタの構築と動作メカニズムについての簡単な説明

目次1. Flinkの概要1.1 基本的な紹介1.2 アプリケーションシナリオ2. 環境の展開2.1...

検証例 MySQL | 同じ値を持つフィールドを更新すると、binlog に記録されます

1. はじめに数日前、開発仲間から、フィールドを同じ値に更新すると binlog が記録されるかどう...

Docker の MySQL コンテナのタイムゾーン問題の修正

序文Ahhang が Springboot プロジェクトを開発していたとき、フロントエンドから検証コ...

JS を使用してクリップボード内の Excel コンテンツを解析する方法

目次序文1. イベントとクリップボードを貼り付ける2. クリップボード内のコンテンツ形式3. HTM...

jsオブジェクトの読み取り速度の詳細な例

1. リテラルとローカル変数へのアクセスは最も高速ですが、配列要素とオブジェクト メンバーへのアクセ...

React コードを共有するためのベストプラクティス

プロジェクトがある程度複雑になると、必然的にロジックの再利用の問題に直面することになります。 Rea...

dockerカスタムイメージでphp7をビルドする方法

まず、簡単な Docker インストールを実行します。イメージをカスタマイズするには、ベースイメージ...

IIS を使用して X-Forwarded-For ヘッダー (XFF) を呼び出して訪問者の実際の IP を記録する 2 つの方法

問題: IIS を通じて公開された Web サイトは F5 デバイスの背後に配置されています。透過的...

MySQL で binlog を使用する際のフォーマットの選択方法

目次1. binlogの3つのモード1.ステートメントレベルモード2. 行レベルモード3. 混合モー...

MySQLインデックス最適化分析に関する簡単な説明

記述した SQL クエリが遅いのはなぜですか?作成したインデックスが頻繁に失敗するのはなぜですか?こ...