ホームページ >運用・保守 >Nginx >docker nginx を実行後にアクセスできない問題を解決する方法

docker nginx を実行後にアクセスできない問題を解決する方法

WBOY
WBOY転載
2023-05-14 21:01:091326ブラウズ

## 1

#私は最近 Docker のデプロイメントを学習しており、最初は nginx を Docker 化することを計画していました。


構成のコントラストとカスタマイズ

公式の nginx.conf をコピーした後、いくつかのカスタマイズを変更および追加しました。主に、default.conf をブロックし、フォルダー sites-available を組み込みました。
# include /etc/nginx/conf.d/.conf;
include /etc/nginx/sites-available/;

公式のオリジナル構成

user nginx;
worker_processes 1;

error_log /var/log/nginx/error.log warn;
pid    /var/run/nginx.pid;


events {
  worker_connections 1024;
}


http {
  include    /etc/nginx/mime.types;
  default_type application/octet-stream;

  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 main;

  sendfile    on;
  #tcp_nopush   on;

  keepalive_timeout 65;

  #gzip on;

  include /etc/nginx/conf.d/*.conf;
}
新しい docker-compose.yml を作成します。イメージ、名前、ポートを指定し、デフォルトの

version: '3'
services:
 nginx-proxy:
  image: nginx
  container_name: nginx
  ports:
   - 8081:80
  volumes:
   - ./nginx/nginx.conf:/etc/nginx/nginx.conf:ro
##の代わりにローカル ファイルをマウントするだけです。

2

docker-compose up を実行した後、nginx への接続でスタックし、ブラウザはポート アドレスにアクセスできません

nginx ... 完了
nginx に接続しています


問題がどこにあるのかわかりません。情報を検索したところ、デバッグに tty パラメータを使用できることがわかりました。


docker-compose.yml を変更し、設定 tty:true を追加します。

docker exec -it nginx /bin/bash

デフォルトのdefault.confを削除した後、他の構成ファイルを追加しておらず、以前のサイトで利用可能なフォルダーが空であることがわかりました。

## 3

あなたは自分自身をだまして、

-./nginx/sites-available:/etc/nginx/sites-available:ro

を追加し、利用可能なサイトに構成ファイルを追加しました。

/etc/nginx/sites-available# ls
default.conf

実行後、ようやくポートアドレスへのアクセスが正常になりました


以上がdocker nginx を実行後にアクセスできない問題を解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。