summaryrefslogtreecommitdiffstats
path: root/nginx
diff options
context:
space:
mode:
authorLauri Ojansivu <x@xet7.org>2018-12-28 17:26:30 +0200
committerLauri Ojansivu <x@xet7.org>2018-12-28 17:26:30 +0200
commitc61e44d55b6e69b94bd6c7a31890263aba0c614a (patch)
tree6ccbbc1a8ea2cd63a93fc734f851b99dab008711 /nginx
parent76c5c283b91c2772a0a978e0b49622058833f951 (diff)
downloadwekan-c61e44d55b6e69b94bd6c7a31890263aba0c614a.tar.gz
wekan-c61e44d55b6e69b94bd6c7a31890263aba0c614a.tar.bz2
wekan-c61e44d55b6e69b94bd6c7a31890263aba0c614a.zip
- Add optional Nginx reverse proxy config to docker-compose.yml and nginx directory.
Thanks to MyTheValentinus !
Diffstat (limited to 'nginx')
-rw-r--r--nginx/nginx.conf92
-rw-r--r--nginx/ssl/.gitkeep1
2 files changed, 93 insertions, 0 deletions
diff --git a/nginx/nginx.conf b/nginx/nginx.conf
new file mode 100644
index 00000000..9029a2b4
--- /dev/null
+++ b/nginx/nginx.conf
@@ -0,0 +1,92 @@
+user www-data;
+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;
+
+ map $http_host $this_host {
+ "" $host;
+ default $http_host;
+ }
+
+ map $http_x_forwarded_proto $the_scheme {
+ default $http_x_forwarded_proto;
+ "" $scheme;
+ }
+
+ map $http_x_forwarded_host $the_host {
+ default $http_x_forwarded_host;
+ "" $this_host;
+ }
+
+ map $http_upgrade $connection_upgrade {
+ default upgrade;
+ '' close;
+ }
+
+ server {
+ listen 80;
+ listen 443 ssl;
+
+ if ($scheme = http) {
+ rewrite ^ https://$host$request_uri? permanent;
+ }
+
+
+ ssl_certificate /etc/nginx/ssl/server.crt;
+ ssl_certificate_key /etc/nginx/ssl/server.key;
+
+
+ ssl_protocols TLSv1.2;
+ ssl_prefer_server_ciphers on;
+ ssl_ciphers EECDH+AESGCM:EECDH+CHACHA20:EECDH+AES;
+
+ ssl_session_cache shared:SSL:10m;
+ ssl_session_timeout 10m;
+
+ ssl_ecdh_curve sect571r1:secp521r1:brainpoolP512r1:secp384r1;
+ add_header Strict-Transport-Security "max-age=31536000; preload";
+
+ # Add headers to serve security related headers
+ add_header X-Content-Type-Options nosniff;
+ add_header X-XSS-Protection "1; mode=block";
+ add_header X-Robots-Tag none;
+ add_header X-Download-Options noopen;
+ add_header X-Permitted-Cross-Domain-Policies none;
+
+ add_header Referrer-Policy "same-origin";
+
+ root /var/www/html;
+ client_max_body_size 10G; # 0=unlimited - set max upload size
+ fastcgi_buffers 64 4K;
+
+ gzip off;
+
+ location / {
+ proxy_pass http://wekan:8080;
+ proxy_http_version 1.1;
+ proxy_set_header Upgrade $http_upgrade;
+ proxy_set_header Connection $connection_upgrade;
+ proxy_set_header X-Forwarded-For $remote_addr;
+ }
+ }
+}
diff --git a/nginx/ssl/.gitkeep b/nginx/ssl/.gitkeep
new file mode 100644
index 00000000..1fe3dd24
--- /dev/null
+++ b/nginx/ssl/.gitkeep
@@ -0,0 +1 @@
+PLACE YOUR SSL Certificates in this folder