Chad
4c24c30526
* Working on getting Reverse Proxy certs to work. * Upgrade mariadb to 10.6. * Checking if anything has missed a check in. * Let's Encrypt is working now after moving the location directive to the conf.d files. Unsure why nginx.conf is not passing it along, so added it to the examples too.
75 lines
2.3 KiB
Plaintext
75 lines
2.3 KiB
Plaintext
# 2022-10-05 Hyperling
|
|
# A dummy test file since true scripts are being kept private.
|
|
# This should help anyone understand how the project is being used.
|
|
|
|
## Instructions ##
|
|
# Add this without the comment to your /etc/hosts to test that it is working,
|
|
# YOUR_DOCKER_SERVER_IP proxy.example.com
|
|
# If testing locally on a workstation,
|
|
# 127.0.0.1 proxy.example.com
|
|
# Then to test, first start the container,
|
|
# cd $DOCKER_HOME/Config/ReverseProxy && docker compose build && docker compose up -d
|
|
# Then from the system with the modified /etc/hosts,
|
|
# curl --insecure proxy.example.com
|
|
# You should see activity in the container log as well as the contents of the
|
|
# proxied website in the terminal, NOT proxy.example.com. If using a browser then you
|
|
# should notice that the URL is still proxy.example.com but the website is correct.
|
|
|
|
# Force HTTPS
|
|
server {
|
|
|
|
listen 80;
|
|
server_name proxy.example.com;
|
|
|
|
location /.well-known/acme-challenge/ {
|
|
default_type "text/plain";
|
|
root /etc/nginx/letsencrypt/;
|
|
}
|
|
|
|
# Redirect to a more secure protocol.
|
|
location / {
|
|
return 301 https://$host$request_uri;
|
|
}
|
|
|
|
}
|
|
|
|
# Serve Resource
|
|
server {
|
|
|
|
listen 443 ssl;
|
|
server_name proxy.example.com;
|
|
|
|
# The certs being used for the website.
|
|
ssl_certificate /etc/nginx/certs/proxy.example.com/fullchain.pem;
|
|
ssl_certificate_key /etc/nginx/certs/proxy.example.com/privkey.pem;
|
|
|
|
location /.well-known/acme-challenge/ {
|
|
default_type "text/plain";
|
|
root /etc/nginx/letsencrypt/;
|
|
}
|
|
|
|
# Send traffic to upstream server
|
|
location / {
|
|
## General format is PROTOCOL://SERVER:PORT. For example:
|
|
#
|
|
# If using a domain name:
|
|
#proxy_pass http://YOUR_SERVER_NAME:8080;
|
|
#
|
|
# If using an IP address:
|
|
#proxy_pass http://192.168.1.80:8080;
|
|
#
|
|
# If using an upstream server:
|
|
#proxy_pass http://example-proxy-site;
|
|
#
|
|
# If forwarding to an external source:
|
|
#proxy_pass https://website.name;
|
|
#
|
|
# Or alternatively, do it like the force of HTTPS if not your server.
|
|
#return 301 https://website.name/$request_uri;
|
|
|
|
# This should forward you from 'proxy.example.com' to a real site:
|
|
proxy_pass https://hyperling.com;
|
|
}
|
|
|
|
}
|