Maison  >  Article  >  Opération et maintenance  >  Comment résoudre le problème selon lequel Docker Nginx n'est pas accessible après l'exécution

Comment résoudre le problème selon lequel Docker Nginx n'est pas accessible après l'exécution

WBOY
WBOYavant
2023-05-14 21:01:091267parcourir

## 1

J'apprends récemment le déploiement de Docker et j'avais initialement prévu de d'abord dockeriser nginx.

Contraster et personnaliser la configuration

Après avoir copié le fichier nginx.conf officiel, j'ai modifié et ajouté quelques personnalisations, bloquant principalement le fichier default.conf et le dossier d'inclusion sites-available

# include /etc/nginx/conf.d/.conf;
include /etc/nginx/sites-available/;

Configuration originale officielle

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

Créer un nouveau docker-compose.yml. Spécifiez simplement les images, les noms, les ports et montez les fichiers locaux au lieu des fichiers par défaut

version: '3'
services:
 nginx-proxy:
  image: nginx
  container_name: nginx
  ports:
   - 8081:80
  volumes:
   - ./nginx/nginx.conf:/etc/nginx/nginx.conf:ro

## 2

Après avoir exécuté docker-compose up, il est resté bloqué lors de la connexion à nginx, navigation Le serveur ne parvient pas non plus à accéder à l'adresse du port

démarrage de nginx... terminé
attachement à nginx

Je ne sais pas où réside le problème Après avoir recherché des informations, j'ai découvert que je pouvais utiliser le tty. paramètre pour le débogage.

Modifiez docker-compose.yml et ajoutez une configuration tty:true.

docker exec -it nginx /bin/bash

J'ai constaté qu'après avoir supprimé le fichier default.conf par défaut, je n'avais pas ajouté d'autres fichiers de configuration et que le dossier précédent sites-available était vide.

## 3

Je me suis trompé, j'ajoute

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

et j'ajoute un fichier de configuration dans les sites-disponibles.

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

Après l'exécution, l'accès à l'adresse du port est enfin normal

docker nginx运行后无法访问如何解决

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer