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

推薦する

MySQL 接続とコレクションの簡単な分析

結合クエリ結合クエリとは、2 つ以上のテーブル間のマッチング クエリを指し、一般的には水平操作と呼ば...

Vue 初心者ガイド: 最初の Vue-cli スキャフォールディング プログラムの作成

1. Vue - 最初の vue-cli プログラムVueの開発はNodeJSに基づいています。実際...

Linux での mysql8.018 のインストールと設定のプロセスの詳細な説明

Windowsでのインストールの紹介:こちらもご覧ください –》WindowsでのMySQL 8.0...

ズームインとズームアウトの閉じるボタンを実現する CSS (サンプル コード)

この効果はブラウザ ページで最もよく見られます。まずは効果の画像をご覧ください。 上の図に示すように...

アルバムと写真をアルバムに保存するためのWeChatアプレット

私は現在、Xiao Nian Gao に似たビデオおよびツール アプリを開発しています。ユーザーが作...

MySQL での置換例の詳細な説明

MySQL での置換例の詳細な説明replace into は insert と似ていますが、rep...

DockerでRedashの中国語版をデプロイしてインストールする方法の詳細な説明

1. インストール手順 Linux 環境でのローカル インストールと比較すると、Docker のイン...

WindowsにMySQL5.7圧縮パッケージを素早くインストールする

この記事では、Windows に MySQL 5.7 圧縮パッケージをインストールする方法について説...

Dockerコンテナのk8sデプロイメントの実装

環境: (docker、k8s クラスター)、前回 docker で起動した Java プログラムの...

vue2 vue3 での Echarts の詳細な使用方法

目次1. インストール2. vue2でEchartsを使用するmain.jsファイル内コンテナが与え...

kubernetes1.5.2 から kubernetes1.10 にアップグレードする際の主要な設定変更記録

この記事では、kubernetes1.5.2 から kubernetes1.10 にアップグレードす...

JavaScript es6 における var、let、const の違いの詳細な説明

まず、よくある質問は、ECMAScript と JavaScript の関係は何ですか? ECMAS...

React と Threejs を使用して VR パノラマ プロジェクトを作成する詳細なプロセス

最近、 Three.jsでReactを使用して、720 度のパノラマ写真を閲覧できるプロジェクトを構...