Heim > Backend-Entwicklung > PHP-Tutorial > Probleme bei der Konfiguration mehrerer Domainnamen bei Docker Nginx

Probleme bei der Konfiguration mehrerer Domainnamen bei Docker Nginx

WBOY
Freigeben: 2023-03-03 10:10:02
Original
2122 Leute haben es durchsucht

Der Versuch, die offizielle Nginx-Image-Konfiguration von Docker zu konfigurieren, ist fehlgeschlagen. Ich weiß sehr wenig darüber und verlasse mich im Wesentlichen auf Tutorials.
Hier ist der Prozess, den ich ausprobiert habe:
YBa

<code>docker run -d   --name YBa --restart=always  -v /Storage/Volumes/App/YBa:/usr/src/myapp php
</code>
Nach dem Login kopieren
Nach dem Login kopieren

YBb

<code>docker run -d   --name YBa --restart=always  -v /Storage/Volumes/App/YBb:/usr/src/myapp php
</code>
Nach dem Login kopieren
Nach dem Login kopieren

Nginx

<code>docker run -d -p 80:80 --name Nginx  --link YBa:yba  --link YBb:ybb  -v /Storage/Volumes/Services/Nginx/Conf/nginx.conf/nginx.conf:/etc/nginx/nginx.conf:ro --restart=always nginx</code>
Nach dem Login kopieren
Nach dem Login kopieren

Nginx.conf

<code>    user nobody nogroup;
events { 

  worker_connections 512; 
}
http { 

  upstream yba {
    server yba; 

  }
  upstream ybb {
    server ybb; 

  }
  server {
    listen *:80; 

    server_name http://app1.com; 
    location / { 

      proxy_pass http://yba/; 

      proxy_set_header   X-Real_IP $remote_addr;
      proxy_set_header   Host      $http_host;
    }
    
  }
}
  server {
    listen *:80; 

    server_name http://app2.com; 
    location / { 

      proxy_pass http://ybb/; 

      proxy_set_header   X-Real_IP $remote_addr;
      proxy_set_header   Host      $http_host;
    }
    
  }
} 
         </code>
Nach dem Login kopieren
Nach dem Login kopieren

Das Problem besteht nun darin, wie man mehrere Domänen über eine einzige Konfigurationsdatei auf mehrere Container verweisen kann.
Ich möchte wissen, ob es andere Lösungen gibt.
Wie man auf mehrere primäre Domänennamen für verschiedene Unterverzeichnisse eines einzelnen verweisen kann Behälter

Antwortinhalt:

Der Versuch, die offizielle Nginx-Image-Konfiguration von Docker zu konfigurieren, ist fehlgeschlagen. Ich weiß sehr wenig darüber und verlasse mich im Wesentlichen auf Tutorials.
Hier ist der Prozess, den ich ausprobiert habe:
YBa

<code>docker run -d   --name YBa --restart=always  -v /Storage/Volumes/App/YBa:/usr/src/myapp php
</code>
Nach dem Login kopieren
Nach dem Login kopieren

YBb

<code>docker run -d   --name YBa --restart=always  -v /Storage/Volumes/App/YBb:/usr/src/myapp php
</code>
Nach dem Login kopieren
Nach dem Login kopieren

Nginx

<code>docker run -d -p 80:80 --name Nginx  --link YBa:yba  --link YBb:ybb  -v /Storage/Volumes/Services/Nginx/Conf/nginx.conf/nginx.conf:/etc/nginx/nginx.conf:ro --restart=always nginx</code>
Nach dem Login kopieren
Nach dem Login kopieren

Nginx.conf

<code>    user nobody nogroup;
events { 

  worker_connections 512; 
}
http { 

  upstream yba {
    server yba; 

  }
  upstream ybb {
    server ybb; 

  }
  server {
    listen *:80; 

    server_name http://app1.com; 
    location / { 

      proxy_pass http://yba/; 

      proxy_set_header   X-Real_IP $remote_addr;
      proxy_set_header   Host      $http_host;
    }
    
  }
}
  server {
    listen *:80; 

    server_name http://app2.com; 
    location / { 

      proxy_pass http://ybb/; 

      proxy_set_header   X-Real_IP $remote_addr;
      proxy_set_header   Host      $http_host;
    }
    
  }
} 
         </code>
Nach dem Login kopieren
Nach dem Login kopieren

Das Problem besteht nun darin, wie man mehrere Domänen über eine einzige Konfigurationsdatei auf mehrere Container verweisen kann.
Ich möchte wissen, ob es andere Lösungen gibt.
Wie man auf mehrere primäre Domänennamen für verschiedene Unterverzeichnisse eines einzelnen verweisen kann Behälter

Sie können die entsprechende Konfigurationsdatei lokal auf conf/ konfigurieren, zum Beispiel conf/api.app2.com.conf, und sie beim Erstellen des Containers zum Container hinzufügen. Der Dockerfile-Code lautet wie folgt

<code>From nginx:1.9
MAINTAINER terry.dawu@gmail.com
ADD nginx.conf /etc/nginx/nginx.conf
ADD conf/* /etc/nginx/conf.d/
RUN mkdir /opt/www && mkdir /opt/log
RUN chmod -R 755 /opt/log /opt/www
VOLUME ["/opt"]</code>
Nach dem Login kopieren

  1. Nginx-Proxy-Verteilung, die auf verschiedene Ports dieser Maschine verweist

  2. CDN-Verteilung, die auf verschiedene Ports des Servers verweist

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage