Ich habe das Problem mit meiner Nginx
Konfiguration, ich kann meine server_name nicht festlegen. Ich habe versucht, meinen Docker Container mit Nginx
Konfiguration im Inneren zu bauen.Nginx Docker haben keinen Zugriff auf den Server über server_name
Körper meiner Dockerfile
.
FROM nginx
RUN rm -rf /etc/nginx/conf.d/*
RUN mkdir /etc/nginx/ssl
RUN chown -R root:root /etc/nginx/ssl
RUN chmod -R 600 /etc/nginx/ssl
COPY etc/ssl/certs/qwobbleprod.crt /etc/nginx/ssl
COPY etc/ssl/certs/app.qwobble.com.key /etc/nginx/ssl
COPY nginx/default.conf /etc/nginx/conf.d/
COPY dist /usr/share/nginx/html
EXPOSE 443
und meine Nginx
Konfigurationsdatei ->
server {
listen 443 ssl default_server;
root /usr/share/nginx/html;
server_name blabla.com www.blabla.com;
access_log /var/log/nginx/nginx.access.log;
error_log /var/log/nginx/nginx.error.log;
ssl on;
ssl_certificate /etc/nginx/ssl/blabla.crt;
ssl_certificate_key /etc/nginx/ssl/blabla.com.key;
sendfile on;
location/{
try_files $uri /index.html =404;
}
location ~* \.(js|css|png|jpg|jpeg|gif|ico|html)$ {
expires max;
log_not_found off;
}
}
Ich versuchte, meinen Docker Behälter
docker build -t <name> .
docker run -it -p 443:443 <name>
Als Ergebnis zu erstellen und auszuführen, habe ich meine App auf https://localhost:443 aber ich habe keinen Zugriff auf meine App durch https://blabla.com:443 oder https://www.blabla.com:443
Ich bin ein Neuling in der Arbeit mit Docker
und Nginx
, und ich habe keine Ahnung, was los ist. Ich werde für jede Hilfe dankbar sein!
Da Sie nur eine Website hosten, ist der Servername nicht wichtig. Sie haben bereits 'listen' gesagt, dass dies der Standardwert ist, da 443 der Port ist, an den alle Anfragen an diesen Port an docker und das nginx-Element gesendet werden. Nginx würde sehen, dass dies die Standard-Site ist. –