69 lines
1.8 KiB
Nginx Configuration File
69 lines
1.8 KiB
Nginx Configuration File
worker_processes 1;
|
|
|
|
events { worker_connections 1024; }
|
|
|
|
# required for non root
|
|
pid /tmp/nginx.pid;
|
|
|
|
http {
|
|
|
|
# required for non root
|
|
client_body_temp_path /tmp/client_temp;
|
|
proxy_temp_path /tmp/proxy_temp_path;
|
|
fastcgi_temp_path /tmp/fastcgi_temp;
|
|
uwsgi_temp_path /tmp/uwsgi_temp;
|
|
scgi_temp_path /tmp/scgi_temp;
|
|
|
|
client_max_body_size 1m;
|
|
|
|
server {
|
|
listen 8080 default_server;
|
|
|
|
# prevent redirecting to 8080 port
|
|
# (e.g. when trailing slash is missed)
|
|
port_in_redirect off;
|
|
|
|
# letsencrypt
|
|
location /.well-known/acme-challenge/ {
|
|
root /service/html/certbot;
|
|
}
|
|
|
|
location /check {
|
|
# set alias (instead of root) to not append /check to path
|
|
alias /service/html/check;
|
|
}
|
|
|
|
location / {
|
|
return 302 https://$host$request_uri;
|
|
}
|
|
}
|
|
|
|
server {
|
|
listen 8443 ssl;
|
|
|
|
# prevent redirecting to 8080 port
|
|
# (e.g. when trailing slash is missed)
|
|
port_in_redirect off;
|
|
|
|
server_name example.com www.example.com localhost;
|
|
|
|
ssl_certificate /service/ssl/example.com/fullchain.pem;
|
|
ssl_certificate_key /service/ssl/example.com/privkey.pem;
|
|
|
|
location / {
|
|
# allow for upstream to be offline by setting
|
|
# docker dns resolver and a variable for the server
|
|
resolver 127.0.0.11 valid=30s;
|
|
set $kweb kweb;
|
|
proxy_pass http://$kweb:8080;
|
|
|
|
proxy_redirect off;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Host $server_name;
|
|
}
|
|
}
|
|
|
|
}
|