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

推薦する

React NativeプロジェクトでLottieアニメーションを使用する方法

Lottie は、Airbnb が開発した iOS、Android、React Native 向けの...

TypeScriptの基本型の詳細な説明

目次ブール型数値型文字列型文字列と数値を連結する未定義およびnull配列型タプル型列挙型あらゆるタイ...

CentOS7 デプロイメント Flask (Apache、mod_wsgi、Python36、venv)

1. Apacheをインストールする # yum インストール -y httpd httpd-de...

CSSトランジションは高さを変更することで要素を拡大したり縮小したりします。

一般的な開発ニーズとして、要素の一部を必要になるまで折りたたんでおきたいことが挙げられます。 Boo...

読み取り専用と無効の微妙な違いの詳細な説明

「読み取り専用」と「無効」はどちらも、ユーザーがフォーム フィールドの内容を変更できないようにします...

MySQL ビューの一貫性を確保する方法の詳細な説明 (チェック オプション付き)

この記事では、例を使用して、MySQL ビューの一貫性を確保する方法 (チェック オプションを使用)...

ウェブページを作るときに知っておくべきいくつかのスキル

1. IE6 では z-index が無効です。 CSS では、階層を変更するために z-index...

HTML レイヤード ボックス シャドウ効果のサンプル コード

まず、画像を見てみましょう。今日はこのエフェクトを作成します。 実は、何でもないんです。Web ペー...

HTML+CSS+jQuery はスクリーンショットで検索ホットリストタブ効果を模倣します

コードをコピーコードは次のとおりです。 <!DOCTYPE html PUBLIC "...

MySQL スロークエリログの基本的な使い方チュートリアル

スロークエリログ関連のパラメータMySQL スロー クエリ関連のパラメータの説明: slow_que...

Webフロントエンド開発におけるエラーを見つけるための基本的な考え方

WEB開発は主に2つのインタラクション(B/Sデータ)から構成されますブラウザ: 1html、css...

CentOS7でパーティションのサイズを変更する方法

昨日、ある人のシステムのインストールを手伝ったのですが、自動パーティション分割をクリックするのを忘れ...

CSS でベジェ曲線の実装を反転する方法

まずは、以前書いた CSS カルーセルアニメーション効果を見てみましょう。アニメーションの遷移をスム...

Docker+keepalived+nginx を使用してマスタースレーブホットスタンバイを実装する方法の例

序文単一障害点を解決するには、マスター/スレーブ ホット スタンバイ ソリューションを構成する必要が...

Node.jsとDenoの比較

目次序文Denoとは何ですか? Node.jsとの比較建築ESモジュール依存関係の管理TypeScr...