Compare commits

..

157 Commits

Author SHA1 Message Date
zino
f105840565 m 2025-11-19 23:12:38 +01:00
zino
0590e7f1d8 m 2025-11-19 22:16:51 +01:00
zino
4f00b3efd5 m 2025-09-23 10:30:25 +02:00
zino
1041a238f6 m 2025-09-23 10:29:21 +02:00
zino
3da16e6864 m 2025-09-23 10:26:15 +02:00
zino
7050d4f407 m 2025-09-23 10:21:32 +02:00
zino
e484933cf5 m 2025-09-23 10:17:26 +02:00
zino
c98045595b m 2025-09-23 10:13:12 +02:00
zino
32496343ba m 2025-09-23 10:09:42 +02:00
zino
313e3f79a6 m 2025-09-23 10:07:42 +02:00
zino
33ea05f58f m 2025-09-23 10:07:31 +02:00
zino
f98d5e6b44 m 2025-09-23 09:59:09 +02:00
zino
293e2ff735 m 2025-09-23 09:56:04 +02:00
zino
da25720404 m 2025-09-23 09:51:25 +02:00
zino
bbd5766662 m 2025-09-23 09:48:33 +02:00
zino
9550d5cb5a m 2025-09-23 09:46:18 +02:00
zino
d6c3269505 m 2025-09-23 09:45:16 +02:00
zino
1edf2aff78 m 2025-09-23 09:42:39 +02:00
zino
202bb501dd m 2025-09-23 09:40:57 +02:00
zino
17d7b206f7 m 2025-09-23 09:34:22 +02:00
zino
9f1e095b99 m 2025-09-23 09:29:29 +02:00
zino
509077d6ee m 2025-09-23 09:28:35 +02:00
zino
5a1115626b m 2025-08-18 10:05:01 +02:00
zino
5d173752ae m 2025-08-14 12:50:10 +02:00
zino
162469c797 m 2025-08-14 10:48:29 +02:00
zino
4e39adf51a m 2025-08-14 10:46:44 +02:00
zino
4eaf49ae7b m 2025-08-14 10:45:38 +02:00
zino
2a1685303d m 2025-08-14 10:37:09 +02:00
zino
a89dfa1d42 m 2025-08-14 10:03:12 +02:00
zino
92e6973843 m 2025-08-13 15:28:09 +02:00
zino
1361b6aa83 m 2025-08-13 14:58:02 +02:00
zino
9ef5d55414 m 2025-08-13 14:49:40 +02:00
zino
a50370e926 m 2025-08-13 14:24:29 +02:00
zino
b29ad5411c m 2025-08-13 14:23:51 +02:00
zino
9190a8f1c5 m 2024-06-18 13:41:26 +02:00
zino
77d83d5b57 m 2024-06-18 13:40:17 +02:00
zino
c57985a721 m 2024-06-08 14:32:16 +02:00
zino
a3708ac4cd m 2024-06-08 14:28:29 +02:00
zino
6993a5abfe m 2024-06-08 14:27:04 +02:00
zino
9c5ad3b512 m 2024-06-08 14:24:57 +02:00
zino
dc7e6d8c61 m 2024-06-08 14:23:38 +02:00
zino
cc7a1ff8dc m 2024-06-08 14:21:09 +02:00
zino
e1c749ad78 m 2024-06-08 14:12:17 +02:00
zino
3778d02139 m 2024-06-08 14:04:55 +02:00
zino
83ee779593 m 2024-06-08 13:49:15 +02:00
zino
b27d1a8f2c m 2024-06-08 13:47:00 +02:00
zino
f99ff14243 m 2024-06-08 13:36:59 +02:00
zino
415953d4de m 2024-06-08 13:33:18 +02:00
zino
223d6d470a m 2024-06-08 13:31:31 +02:00
zino
0a84bc38be m 2024-06-06 19:33:08 +02:00
zino
b57b52b3da m 2024-06-06 19:28:08 +02:00
zino
5d05203457 m 2024-06-06 19:21:49 +02:00
zino
5376ede635 m 2024-06-06 19:15:12 +02:00
zino
04fc7a2ffa m 2024-06-06 19:13:30 +02:00
zino
59d2ef4d0d m 2024-04-01 18:26:17 +02:00
zino
32cd90cca0 m 2024-04-01 18:25:44 +02:00
zino
bf0bf654c5 m 2024-04-01 18:25:39 +02:00
zino
33337f83cc m 2024-04-01 18:01:40 +02:00
zino
7a7429b610 m 2024-04-01 17:41:01 +02:00
zino
e557c3589c m 2024-04-01 17:38:52 +02:00
zino
32f4be6957 m 2024-04-01 17:19:13 +02:00
zino
ab5e584008 m 2024-04-01 17:05:02 +02:00
zino
14dd20a34c m 2024-04-01 17:04:20 +02:00
zino
17110d3c13 m 2024-04-01 16:52:43 +02:00
zino
0f47088789 m 2024-04-01 16:48:43 +02:00
zino
72f4d15726 m 2024-04-01 16:48:00 +02:00
zino
96ba0eb83d m 2024-03-29 20:24:54 +01:00
zino
1f82e694da m 2024-03-29 20:18:57 +01:00
zino
b2bf4bbf8d m 2024-03-29 20:10:45 +01:00
zino
89875a56b5 m 2024-03-29 20:08:10 +01:00
zino
78310df861 m 2024-03-29 17:02:28 +01:00
zino
2a902d8b92 m 2024-03-29 16:59:28 +01:00
zino
5e52ddf28d m 2024-03-29 16:50:55 +01:00
zino
1090d5922f m 2024-03-29 16:48:14 +01:00
zino
2201bf5833 m 2024-03-29 16:41:05 +01:00
zino
1c34795e1e m 2024-02-01 13:50:11 +01:00
zino
35db124803 m 2024-02-01 13:47:49 +01:00
zino
c2a973d564 m 2024-02-01 13:44:57 +01:00
zino
573aad3b1a m 2024-02-01 13:42:49 +01:00
zino
f95abe349a m 2024-01-21 16:34:51 +01:00
zino
ffcc1686ca m 2024-01-21 16:32:26 +01:00
zino
1983901d53 , 2024-01-21 16:30:53 +01:00
zino
4ae773badd m 2024-01-21 16:16:54 +01:00
zino
f6c9a445be m 2024-01-21 16:14:55 +01:00
zino
ca3e3a7457 m 2024-01-21 16:12:05 +01:00
zino
131b1e2364 m 2024-01-21 16:03:00 +01:00
zino
83cba957a2 m 2024-01-21 15:59:57 +01:00
zino
08d5b72c91 m 2023-12-10 17:45:30 +01:00
zino
a5457db297 m 2023-12-10 17:31:30 +01:00
zino
0ee9123293 m 2023-12-10 17:14:24 +01:00
zino
b6250bed79 m 2023-12-10 16:38:19 +01:00
zino
fa773d78d5 m 2023-12-10 14:28:49 +01:00
zino
3a80e08fa3 m 2023-12-10 14:26:25 +01:00
zino
0cacf79f8d m 2023-12-10 14:22:00 +01:00
zino
11232dc9d6 m 2023-12-10 14:20:39 +01:00
zino
d383725650 m 2023-12-10 14:19:07 +01:00
zino
5401c0133c m 2023-12-10 14:17:38 +01:00
zino
d7b88e188a m 2023-12-10 14:15:27 +01:00
zino
b45f4b1c56 m 2023-12-10 14:11:25 +01:00
zino
a705e8034a m 2023-12-10 14:10:08 +01:00
zino
ac569bf453 m 2023-12-10 14:07:40 +01:00
zino
cbc07efa19 m 2023-12-10 13:54:25 +01:00
zino
6781ca3bbd m 2023-12-10 13:50:42 +01:00
zino
82942a542d m 2023-12-10 13:38:43 +01:00
zino
e79c96f2d6 m 2023-12-10 13:29:00 +01:00
zino
f349e1b923 m 2023-12-10 12:33:41 +01:00
zino
1fae2aa434 m 2023-12-10 02:38:26 +01:00
zino
c9b73dbd1a m 2023-12-10 02:37:01 +01:00
zino
ffe433cf21 m 2023-12-10 02:28:09 +01:00
zino
ef6ef33754 m 2023-12-10 02:11:17 +01:00
zino
9d5a92211f m 2023-12-10 02:02:00 +01:00
zino
1b0e308fa3 m 2023-12-10 01:58:30 +01:00
zino
4936768762 m 2023-12-10 01:57:23 +01:00
zino
6af3d1cc62 m 2023-12-10 01:48:53 +01:00
zino
0e601e54b6 m 2023-12-10 01:31:49 +01:00
zino
3c1bd28763 m 2023-12-10 01:31:03 +01:00
zino
3d47735381 m 2023-12-10 01:30:18 +01:00
zino
7c869ad8b3 m 2023-12-10 01:21:16 +01:00
zino
6a57711d47 m 2023-12-10 01:16:43 +01:00
zino
2a7f8f77cf m 2023-12-09 21:04:40 +01:00
zino
957b9088b7 m 2023-12-09 21:03:13 +01:00
zino
312c5c506a m 2023-12-09 20:36:02 +01:00
zino
974f7d993d m 2023-12-09 20:35:08 +01:00
zino
9ae4a84978 m 2023-12-09 20:34:06 +01:00
zino
106a7e5f5b m 2023-12-09 20:30:07 +01:00
zino
45e2bd87f3 m 2023-12-09 20:29:09 +01:00
zino
04d7f9ec8d modified: docker-compose.yml
modified:   volumes/conf.d/zinomedia.de.conf
2023-12-09 20:23:46 +01:00
zino
4a3a71972f m 2023-12-09 20:21:43 +01:00
zino
75dd2ef31f m 2023-12-09 20:16:30 +01:00
zino
243eda8d3b m 2023-12-09 20:15:51 +01:00
zino
84af1a3cf9 m 2023-12-09 20:14:38 +01:00
zino
06a8950ba8 m 2023-12-09 20:13:07 +01:00
zino
f7ad867bca m 2023-12-09 20:07:39 +01:00
zino
df59b5f836 modified: volumes/conf.d/zinomedia.de.conf 2023-12-09 20:06:49 +01:00
zino
a739419274 m 2023-12-09 20:06:17 +01:00
zino
129b7915aa m 2023-12-09 20:04:52 +01:00
zino
12c023fbf2 m 2023-12-09 19:57:12 +01:00
zino
e6070ea5bc m 2023-12-09 19:51:16 +01:00
zino
289bb03d0e modified: volumes/conf.d/zinomedia.de.conf 2023-12-09 19:46:17 +01:00
zino
0003cc9673 m 2023-12-09 19:41:10 +01:00
zino
39176fd161 m 2023-12-09 19:34:58 +01:00
zino
cd93a85f7c m 2023-12-09 19:33:05 +01:00
zino
76b915244a m 2023-12-09 19:31:00 +01:00
zino
6f5b2d26e6 m 2023-12-09 19:21:11 +01:00
zino
91ec9cf007 m 2023-12-09 19:19:17 +01:00
zino
5624a6b32d m 2023-12-09 19:18:46 +01:00
zino
e780e4ffd7 m 2023-12-09 19:18:07 +01:00
zino
01aa1fa08a m 2023-12-09 19:17:02 +01:00
zino
490a03856e m 2023-12-09 19:15:58 +01:00
zino
59cee5bd51 m 2023-12-09 19:02:00 +01:00
zino
3e5021388f m 2023-12-09 18:59:44 +01:00
zino
8197074b37 m 2023-12-09 18:59:09 +01:00
zino
e2f59e4715 m 2023-12-09 18:58:45 +01:00
zino
30b730dc65 modified: volumes/conf.d/zinomedia.de.conf 2023-12-09 18:58:00 +01:00
zino
ed1fa82748 m 2023-12-09 18:54:40 +01:00
zino
f149b0c3a4 m 2023-12-09 18:49:06 +01:00
zino
eb1469e086 m 2023-12-09 16:04:00 +01:00
33 changed files with 799 additions and 26 deletions

5
.gitignore vendored
View File

@@ -5,6 +5,11 @@ volumes/html/*
!volumes/html/dl.zinomedia.de !volumes/html/dl.zinomedia.de
!volumes/html/pkrstarsbot.zinomedia.de !volumes/html/pkrstarsbot.zinomedia.de
!volumes/logs/ !volumes/logs/
!volumes/html/registry.zinomedia.de
!volumes/html/registryui.zinomedia.de
!volumes/html/mtail.zinomedia.de
!volumes/html/metrics.registry.zinomedia.de
!volumes/html/etherpad.zinomedia.de
# Ignore contents of these directories # Ignore contents of these directories
volumes/html/dl.zinomedia.de/* volumes/html/dl.zinomedia.de/*

View File

@@ -1,4 +1,3 @@
version: '3.8'
services: services:
nginx: nginx:
image: nginx:latest image: nginx:latest
@@ -20,6 +19,13 @@ services:
- /etc/letsencrypt:/etc/letsencrypt - /etc/letsencrypt:/etc/letsencrypt
- ../docker-wordpress-4netplayers/volumes/wordpress:/usr/share/nginx/html/4netplayers.zinomedia.de - ../docker-wordpress-4netplayers/volumes/wordpress:/usr/share/nginx/html/4netplayers.zinomedia.de
- ../docker-wordpress-zinomedia/volumes/wordpress:/usr/share/nginx/html/zinomedia.de - ../docker-wordpress-zinomedia/volumes/wordpress:/usr/share/nginx/html/zinomedia.de
- ../docker-wordpress-autocutbot/volumes/wordpress:/usr/share/nginx/html/autocutbot.zinomedia.de
- ../docker-wordpress-pokerstarsbot/volumes/wordpress:/usr/share/nginx/html/pokerstarsbot.zinomedia.de
- ../docker-wordpress-pokerstarsbotx/volumes/wordpress:/usr/share/nginx/html/pokerstarsbotx.zinomedia.de
- ../docker-wordpress-seatmapv2/volumes/wordpress:/usr/share/nginx/html/seatmapv2.zinomedia.de
- ../docker-wordpress-terminsnipe/volumes/wordpress:/usr/share/nginx/html/terminsnipe.zinomedia.de
extra_hosts:
- "host.docker.internal:host-gateway"
networks: networks:
web: web:

View File

@@ -0,0 +1,46 @@
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name autocutbot.zinomedia.de;
#access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log error;
access_log off;
root /usr/share/nginx/html/autocutbot.zinomedia.de;
index index.php;
ssl_certificate /etc/letsencrypt/live/autocutbot.zinomedia.de/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/autocutbot.zinomedia.de/privkey.pem;
include "snippets/ssl-optimizations.conf";
include "snippets/wordpress-optimizations.conf";
add_header Content-Security-Policy "default-src 'unsafe-inline' 'unsafe-eval' data: blob: *; script-src 'unsafe-inline' 'unsafe-eval' data: blob: *; img-src 'unsafe-inline' data: blob: *; style-src 'unsafe-inline' data: blob: *; font-src 'unsafe-inline' data: blob: *;" always;
client_max_body_size 0;
location / {
resolver 127.0.0.11;
set $upstream "autocutbot-wordpress:80";
try_files $uri $uri/ /index.php?$args;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto https;
proxy_pass http://$upstream;
}
}
server {
listen 80;
listen [::]:80;
server_name autocutbot.zinomedia.de;
return 301 https://$host$request_uri;
}

View File

@@ -1,11 +1,8 @@
#log_format custom2 '[$time_iso8601] CODE | request_uri: $request_uri | status: $status | http_host: $http_host | auth_resp_x_vouch_user: $auth_resp_x_vouch_user | upstream_http_x_vouch_user: $upstream_http_x_vouch_user | auth_resp_jwt: $auth_resp_jwt | upstream_http_x_vouch_jwt: $upstream_http_x_vouch_jwt | auth_resp_err: $auth_resp_err | upstream_http_x_vouch_err: $upstream_http_x_vouch_err | auth_resp_failcount: $auth_resp_failcount | upstream_http_x_vouch_failcount: $upstream_http_x_vouch_failcount';
server { server {
listen 443 ssl; listen 443 ssl;
listen [::]:443 ssl; listen [::]:443 ssl;
server_name code.zinomedia.de; server_name code.zinomedia.de;
#access_log /var/log/nginx/access.log custom2;
access_log off; access_log off;
error_log /var/log/nginx/error.log debug; error_log /var/log/nginx/error.log debug;
@@ -15,8 +12,6 @@ server {
include "snippets/ssl-optimizations.conf"; include "snippets/ssl-optimizations.conf";
include "snippets/enable-vouch.conf"; include "snippets/enable-vouch.conf";
add_header Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval'; img-src 'self' data:; style-src 'self' 'unsafe-inline'; font-src 'self' data:;" always;
location / { location / {
resolver 127.0.0.11; resolver 127.0.0.11;
set $upstream "http://code-server:8443"; set $upstream "http://code-server:8443";

View File

@@ -0,0 +1,42 @@
server {
listen *:443 ssl;
listen [::]:443 ssl;
server_name drawio.zinomedia.de;
access_log off;
error_log /var/log/nginx/error.log error;
ssl_certificate /etc/letsencrypt/live/drawio.zinomedia.de/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/drawio.zinomedia.de/privkey.pem;
include "snippets/ssl-optimizations.conf";
include "snippets/enable-vouch.conf";
add_header Content-Security-Policy "default-src 'self' data:; script-src 'self' 'unsafe-inline' 'unsafe-eval'; img-src 'self' data: http://drawio.zinomedia.de; style-src 'self' 'unsafe-inline'; font-src 'self' data:; connect-src *;" always;
location / {
resolver 127.0.0.11;
set $upstream "drawio:8080";
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto https;
proxy_pass http://$upstream;
proxy_redirect off;
proxy_buffering on;
proxy_buffers 16 32k;
proxy_buffer_size 64k;
}
}
server {
server_name drawio.zinomedia.de;
listen 80;
listen [::]:80;
return 301 https://$host$request_uri;
}

View File

@@ -0,0 +1,66 @@
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name etherpad.zinomedia.de;
access_log off;
error_log /var/log/nginx/error.log error;
ssl_certificate /etc/letsencrypt/live/etherpad.zinomedia.de/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/etherpad.zinomedia.de/privkey.pem;
include "snippets/ssl-optimizations.conf";
auth_basic "Protected";
auth_basic_user_file /usr/share/nginx/html/etherpad.zinomedia.de/.htpasswd;
location / {
resolver 127.0.0.11;
set $upstream "http://etherpad:9001";
rewrite ^/$ / break;
rewrite ^/locales/(.*) /locales/$1 break;
rewrite ^/locales.json /locales.json break;
rewrite ^/admin(.*) /admin$1 break;
rewrite ^/p/(.*) /p/$1 break;
rewrite ^/static/(.*) /static/$1 break;
rewrite ^/pluginfw/(.*) /pluginfw/$1 break;
rewrite ^/javascripts/(.*) /javascripts/$1 break;
rewrite ^/socket.io/(.*) /socket.io/$1 break;
rewrite ^/ep/(.*) /ep/$1 break;
rewrite ^/minified/(.*) /minified/$1 break;
rewrite ^/api/(.*) /api/$1 break;
rewrite ^/ro/(.*) /ro/$1 break;
rewrite ^/error/(.*) /error/$1 break;
rewrite ^/jserror(.*) /jserror$1 break;
rewrite ^/redirect(.*) /redirect$1 break;
rewrite ^/(.*\.js) /$1 break;
rewrite /favicon.ico /favicon.ico break;
rewrite /robots.txt /robots.txt break;
rewrite /(.*) /p/$1;
proxy_pass $upstream;
proxy_buffering off;
proxy_set_header Host $host;
proxy_pass_header Server;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
server {
listen 80;
listen [::]:80;
server_name etherpad.zinomedia.de;
return 301 https://$host$request_uri;
}

View File

@@ -0,0 +1,34 @@
server {
listen 443 ssl;
listen [::]:443 ssl;
http2 on;
server_name ha.zinomedia.de;
ssl_certificate /etc/letsencrypt/live/ha.zinomedia.de/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/ha.zinomedia.de/privkey.pem;
include "snippets/ssl-optimizations.conf";
location / {
proxy_pass http://host.docker.internal:8123;
proxy_set_header Host $http_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-Proto $scheme;
proxy_set_header X-Frame-Options SAMEORIGIN;
proxy_set_header X-Content-Type-Options nosniff;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_connect_timeout 15s;
proxy_read_timeout 30s;
proxy_send_timeout 30s;
send_timeout 30s;
}
}
server {
listen 80;
listen [::]:80;
server_name ha.zinomedia.de;
return 301 https://$host$request_uri;
}

View File

@@ -0,0 +1,54 @@
server {
listen 443 ssl;
listen [::]:443 ssl;
http2 on;
server_name mail.zinomedia.de autodiscover.* autoconfig.*;
access_log off;
error_log /var/log/nginx/error.log error;
ssl_certificate /etc/letsencrypt/live/mail.zinomedia.de/cert.pem;
ssl_certificate_key /etc/letsencrypt/live/mail.zinomedia.de/privkey.pem;
ssl_session_timeout 1d;
ssl_session_cache shared:SSL:50m;
ssl_session_tickets off;
ssl_protocols TLSv1.2;
ssl_ciphers HIGH:!aNULL:!MD5:!SHA1:!kRSA;
ssl_prefer_server_ciphers off;
# resolver 127.0.0.11;
location /Microsoft-Server-ActiveSync {
proxy_pass http://host.docker.internal:8080/Microsoft-Server-ActiveSync;
proxy_set_header Host $http_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-Proto $scheme;
proxy_connect_timeout 75;
proxy_send_timeout 3650;
proxy_read_timeout 3650;
proxy_buffers 64 512k;
client_body_buffer_size 512k;
client_max_body_size 0;
}
location / {
proxy_pass http://host.docker.internal:8080/;
proxy_set_header Host $http_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-Proto $scheme;
client_max_body_size 0;
proxy_buffer_size 128k;
proxy_buffers 64 512k;
proxy_busy_buffers_size 512k;
}
}
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name mail.zinomedia.de autodiscover.* autoconfig.*;
return 301 https://$host$request_uri;
}

View File

@@ -0,0 +1,37 @@
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name metrics.registry.zinomedia.de;
access_log off;
error_log /var/log/nginx/error.log error;
# SSL Certificate Configuration
ssl_certificate /etc/letsencrypt/live/metrics.registry.zinomedia.de/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/metrics.registry.zinomedia.de/privkey.pem;
include "snippets/ssl-optimizations.conf";
# Password protect
auth_basic "Protected Area";
auth_basic_user_file /usr/share/nginx/html/metrics.registry.zinomedia.de/.htpasswd;
location / {
resolver 127.0.0.11;
set $upstream "http://registry:5001";
proxy_pass $upstream;
proxy_set_header Host $http_host; # required for docker client's sake
proxy_set_header X-Real-IP $remote_addr; # pass on real client's IP
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_read_timeout 900;
}
}
server {
listen 80;
listen [::]:80;
server_name metrics.registry.zinomedia.de;
return 301 https://$host$request_uri;
}

View File

@@ -0,0 +1,38 @@
server {
listen *:443 ssl;
listen [::]:443 ssl;
server_name mtail.zinomedia.de;
access_log off;
error_log /var/log/nginx/error.log error;
ssl_certificate /etc/letsencrypt/live/mtail.zinomedia.de/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/mtail.zinomedia.de/privkey.pem;
include "snippets/ssl-optimizations.conf";
location / {
resolver 127.0.0.11;
set $upstream "mtail:3903";
# Password protect
auth_basic "Protected";
auth_basic_user_file /usr/share/nginx/html/mtail.zinomedia.de/.htpasswd;
proxy_set_header X-Forwarded-Host $host:$server_port;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_http_version 1.1;
proxy_read_timeout 300s;
proxy_pass http://$upstream;
}
}
server {
server_name mtail.zinomedia.de;
listen 80;
listen [::]:80;
return 301 https://$host$request_uri;
}

View File

@@ -14,6 +14,7 @@ server {
ssl_certificate_key /etc/letsencrypt/live/pkrstarsbot.zinomedia.de/privkey.pem; ssl_certificate_key /etc/letsencrypt/live/pkrstarsbot.zinomedia.de/privkey.pem;
include "snippets/ssl-optimizations.conf"; include "snippets/ssl-optimizations.conf";
include "snippets/enable-php-fpm.conf";
add_header Content-Security-Policy "default-src 'self'; script-src 'self'; img-src 'self' data:; style-src 'self'; font-src 'self' data:;" always; add_header Content-Security-Policy "default-src 'self'; script-src 'self'; img-src 'self' data:; style-src 'self'; font-src 'self' data:;" always;
@@ -22,19 +23,8 @@ server {
} }
# Password protect # Password protect
#auth_basic "Protected Area"; auth_basic "Protected Area";
#auth_basic_user_file /usr/share/nginx/html/pkrstarsbot.zinomedia.de/www/htdocs/.htpasswd; auth_basic_user_file /usr/share/nginx/html/pkrstarsbot.zinomedia.de/www/htdocs/.htpasswd;
# PHP Processing
location ~ \.php$ {
resolver 127.0.0.11;
set $upstream "php-fpm:9000";
include fastcgi_params;
fastcgi_pass $upstream;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_index index.php;
}
# Static File Caching (Optional) # Static File Caching (Optional)
location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ { location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ {

View File

@@ -0,0 +1,45 @@
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name pokerstarsbot.zinomedia.de;
error_log /var/log/nginx/error.log error;
access_log off;
root /usr/share/nginx/html/pokerstarsbot.zinomedia.de;
index index.php;
ssl_certificate /etc/letsencrypt/live/pokerstarsbot.zinomedia.de/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/pokerstarsbot.zinomedia.de/privkey.pem;
include "snippets/ssl-optimizations.conf";
include "snippets/wordpress-optimizations.conf";
add_header Content-Security-Policy "default-src 'unsafe-inline' 'unsafe-eval' data: blob: *; script-src 'unsafe-inline' 'unsafe-eval' data: blob: *; img-src 'unsafe-inline' data: blob: *; style-src 'unsafe-inline' data: blob: *; font-src 'unsafe-inline' data: blob: *;" always;
client_max_body_size 0;
location / {
resolver 127.0.0.11;
set $upstream "pokerstarsbot-wordpress:80";
try_files $uri $uri/ /index.php?$args;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto https;
proxy_pass http://$upstream;
}
}
server {
listen 80;
listen [::]:80;
server_name pokerstarsbot.zinomedia.de;
return 301 https://$host$request_uri;
}

View File

@@ -0,0 +1,45 @@
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name pokerstarsbotx.zinomedia.de;
error_log /var/log/nginx/error.log error;
access_log off;
root /usr/share/nginx/html/pokerstarsbotx.zinomedia.de;
index index.php;
ssl_certificate /etc/letsencrypt/live/pokerstarsbotx.zinomedia.de/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/pokerstarsbotx.zinomedia.de/privkey.pem;
include "snippets/ssl-optimizations.conf";
include "snippets/wordpress-optimizations.conf";
add_header Content-Security-Policy "default-src 'unsafe-inline' 'unsafe-eval' data: blob: *; script-src 'unsafe-inline' 'unsafe-eval' data: blob: *; img-src 'unsafe-inline' data: blob: *; style-src 'unsafe-inline' data: blob: *; font-src 'unsafe-inline' data: blob: *;" always;
client_max_body_size 0;
location / {
resolver 127.0.0.11;
set $upstream "pokerstarsbotx-wordpress:80";
try_files $uri $uri/ /index.php?$args;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto https;
proxy_pass http://$upstream;
}
}
server {
listen 80;
listen [::]:80;
server_name pokerstarsbotx.zinomedia.de;
return 301 https://$host$request_uri;
}

View File

@@ -20,6 +20,10 @@ server {
proxy_set_header X-Forwarded-Host $host:$server_port; proxy_set_header X-Forwarded-Host $host:$server_port;
proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_read_timeout 300s;
proxy_pass http://$upstream; proxy_pass http://$upstream;
} }

View File

@@ -0,0 +1,95 @@
## Set a variable to help us decide if we need to add the
## 'Docker-Distribution-Api-Version' header.
## The registry always sets this header.
## In the case of nginx performing auth, the header is unset
## since nginx is auth-ing before proxying.
map $upstream_http_docker_distribution_api_version $docker_distribution_api_version {
'' 'registry/2.0';
}
## Record actual registry push/pull traffic
include "snippets/registry-transfer-logging.conf";
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name registry.zinomedia.de;
access_log /var/log/nginx/registry.zinomedia.de.access.log;
error_log /var/log/nginx/error.log;
# Record actual registry push/pull traffic
access_log /var/log/nginx/registry.zinomedia.de.access.json.log registry_json if=$is_transfer_loggable;
ssl_certificate /etc/letsencrypt/live/registry.zinomedia.de/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/registry.zinomedia.de/privkey.pem;
# Recommendations from https://raymii.org/s/tutorials/Strong_SSL_Security_On_nginx.html
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers 'EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH';
ssl_prefer_server_ciphers on;
# required to avoid HTTP 411: see Issue #1486 (https://github.com/moby/moby/issues/1486)
chunked_transfer_encoding on;
location / {
return 403;
}
location /v2/ {
# disable any limits to avoid HTTP 413 for large image uploads
client_max_body_size 0;
# Password protect
auth_basic "Protected Registry";
auth_basic_user_file /usr/share/nginx/html/registry.zinomedia.de/.htpasswd;
if ($request_method = OPTIONS) {
add_header 'Access-Control-Allow-Origin' 'https://registryui.zinomedia.de';
add_header 'Access-Control-Allow-Credentials' 'true';
add_header 'Access-Control-Allow-Headers' 'Authorization, Accept, Cache-Control';
add_header 'Access-Control-Allow-Methods' 'HEAD, GET, OPTIONS, DELETE';
add_header 'Content-Length' '0';
add_header 'Content-Type' 'text/plain charset=UTF-8';
return 204;
}
if ($request_method = DELETE) {
add_header 'Access-Control-Allow-Origin' 'https://registryui.zinomedia.de' always;
add_header 'Access-Control-Allow-Credentials' 'true' always;
add_header 'Access-Control-Allow-Headers' 'Authorization, Accept, Cache-Control' always;
add_header 'Access-Control-Allow-Methods' 'HEAD, GET, OPTIONS, DELETE' always;
}
add_header Access-Control-Allow-Origin "https://registryui.zinomedia.de";
add_header Access-Control-Allow-Credentials "true";
add_header Access-Control-Allow-Headers "Authorization, Accept, Cache-Control";
add_header Access-Control-Allow-Methods "HEAD, GET, OPTIONS, DELETE";
# Do not allow connections from docker 1.5 and earlier
if ($http_user_agent ~ "^(docker\/1\.(3|4|5(?!\.[0-9]-dev))|Go ).*$" ) {
return 404;
}
## If $docker_distribution_api_version is empty, the header is not added.
## See the map directive above where this variable is defined.
add_header 'Docker-Distribution-Api-Version' $docker_distribution_api_version always;
resolver 127.0.0.11;
set $upstream "http://registry:5000";
proxy_pass $upstream;
proxy_set_header Host $http_host; # required for docker client's sake
proxy_set_header X-Real-IP $remote_addr; # pass on real client's IP
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_read_timeout 900;
}
}
server {
listen 80;
listen [::]:80;
server_name registry.zinomedia.de;
return 301 https://$host$request_uri;
}

View File

@@ -0,0 +1,42 @@
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name registryui.zinomedia.de;
access_log off;
error_log /var/log/nginx/error.log error;
root /usr/share/nginx/html/registryui.zinomedia.de/www/htdocs;
index index.php index.html;
# SSL Certificate Configuration
ssl_certificate /etc/letsencrypt/live/registryui.zinomedia.de/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/registryui.zinomedia.de/privkey.pem;
include "snippets/ssl-optimizations.conf";
# Password protect
auth_basic "Protected Area";
auth_basic_user_file /usr/share/nginx/html/registryui.zinomedia.de/.htpasswd;
location / {
add_header Content-Security-Policy "default-src * 'unsafe-inline' 'unsafe-eval'; script-src * 'unsafe-inline' 'unsafe-eval'; img-src * data:; style-src * 'unsafe-inline'; font-src * data:;" always;
resolver 127.0.0.11;
set $upstream "http://registryui:80";
proxy_pass $upstream;
client_max_body_size 0;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Host $server_name;
}
}
server {
listen 80;
listen [::]:80;
server_name registryui.zinomedia.de;
return 301 https://$host$request_uri;
}

View File

@@ -0,0 +1,45 @@
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name seatmapv2.zinomedia.de;
error_log /var/log/nginx/error.log error;
access_log off;
root /usr/share/nginx/html/seatmapv2.zinomedia.de;
index index.php;
ssl_certificate /etc/letsencrypt/live/seatmapv2.zinomedia.de/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/seatmapv2.zinomedia.de/privkey.pem;
include "snippets/ssl-optimizations.conf";
include "snippets/wordpress-optimizations.conf";
add_header Content-Security-Policy "default-src 'unsafe-inline' 'unsafe-eval' data: blob: *; script-src 'unsafe-inline' 'unsafe-eval' data: blob: *; img-src 'unsafe-inline' data: blob: *; style-src 'unsafe-inline' data: blob: *; font-src 'unsafe-inline' data: blob: *;" always;
client_max_body_size 0;
location / {
resolver 127.0.0.11;
set $upstream "seatmapv2-wordpress:80";
try_files $uri $uri/ /index.php?$args;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto https;
proxy_pass http://$upstream;
}
}
server {
listen 80;
listen [::]:80;
server_name seatmapv2.zinomedia.de;
return 301 https://$host$request_uri;
}

View File

@@ -0,0 +1,33 @@
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name simhub.zinomedia.de;
access_log off;
error_log /var/log/nginx/error.log error;
# SSL Certificate Configuration
ssl_certificate /etc/letsencrypt/live/simhub.zinomedia.de/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/simhub.zinomedia.de/privkey.pem;
include "snippets/ssl-optimizations.conf";
location / {
resolver 127.0.0.11;
set $upstream "http://simracing-telemetry-hub-workspace:8000";
proxy_pass $upstream;
proxy_set_header Host $http_host; # required for docker client's sake
proxy_set_header X-Real-IP $remote_addr; # pass on real client's IP
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_read_timeout 900;
}
}
server {
listen 80;
listen [::]:80;
server_name simhub.zinomedia.de;
return 301 https://$host$request_uri;
}

View File

@@ -0,0 +1,45 @@
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name terminsnipe.zinomedia.de;
error_log /var/log/nginx/error.log error;
access_log off;
root /usr/share/nginx/html/terminsnipe.zinomedia.de;
index index.php;
ssl_certificate /etc/letsencrypt/live/terminsnipe.zinomedia.de/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/terminsnipe.zinomedia.de/privkey.pem;
include "snippets/ssl-optimizations.conf";
include "snippets/wordpress-optimizations.conf";
add_header Content-Security-Policy "default-src 'unsafe-inline' 'unsafe-eval' data: blob: *; script-src 'unsafe-inline' 'unsafe-eval' data: blob: *; img-src 'unsafe-inline' data: blob: *; style-src 'unsafe-inline' data: blob: *; font-src 'unsafe-inline' data: blob: *;" always;
client_max_body_size 0;
location / {
resolver 127.0.0.11;
set $upstream "terminsnipe-wordpress:80";
try_files $uri $uri/ /index.php?$args;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto https;
proxy_pass http://$upstream;
}
}
server {
listen 80;
listen [::]:80;
server_name terminsnipe.zinomedia.de;
return 301 https://$host$request_uri;
}

View File

@@ -1,12 +1,21 @@
# Dynamically set CORS headers based on the request origin.
# Needed for legacy wordoress migrations
map $http_origin $allow_origin {
~^https://(.*\.)?zinomedia\.de$ $http_origin;
default "";
}
server { server {
listen 443 ssl; listen 443 ssl;
listen [::]:443 ssl; listen [::]:443 ssl;
server_name zinomedia.de; server_name zinomedia.de;
access_log off; #access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log error; error_log /var/log/nginx/error.log error;
access_log off;
root /usr/share/nginx/html/zinomedia.de; root /usr/share/nginx/html/zinomedia.de;
index index.php; index index.php;
ssl_certificate /etc/letsencrypt/live/zinomedia.de/fullchain.pem; ssl_certificate /etc/letsencrypt/live/zinomedia.de/fullchain.pem;
@@ -15,21 +24,26 @@ server {
include "snippets/ssl-optimizations.conf"; include "snippets/ssl-optimizations.conf";
include "snippets/wordpress-optimizations.conf"; include "snippets/wordpress-optimizations.conf";
add_header Content-Security-Policy "default-src *; script-src 'self' 'unsafe-inline' 'unsafe-eval' blob:; img-src 'self' data: *; style-src 'self' 'unsafe-inline'; font-src 'self' data: *;" always; add_header Content-Security-Policy "default-src 'unsafe-inline' 'unsafe-eval' data: blob: *; script-src 'unsafe-inline' 'unsafe-eval' data: blob: *; img-src 'unsafe-inline' data: blob: *; style-src 'unsafe-inline' data: blob: *; font-src 'unsafe-inline' data: blob: *;" always;
client_max_body_size 0; client_max_body_size 0;
# Dynamically set CORS headers based on the request origin.
add_header 'Access-Control-Allow-Origin' $allow_origin;
location / { location / {
resolver 127.0.0.11; resolver 127.0.0.11;
set $upstream "zinomedia-wordpress:80"; set $upstream "zinomedia-wordpress:80";
try_files $uri $uri/ /index.php?$args; try_files $uri $uri/ /index.php?$args;
proxy_set_header Host $http_host; proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Host $host:$server_port;
proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto https;
proxy_pass http://$upstream; proxy_pass http://$upstream;
} }
} }

View File

@@ -0,0 +1 @@
zino:$apr1$XBzEVqBi$9SNhwAwBS2PJ47coYKoRH/

View File

@@ -0,0 +1 @@
zino:$apr1$XBzEVqBi$9SNhwAwBS2PJ47coYKoRH/

View File

View File

@@ -0,0 +1 @@
zino:$apr1$XBzEVqBi$9SNhwAwBS2PJ47coYKoRH/

View File

@@ -0,0 +1 @@
zino:$apr1$XBzEVqBi$9SNhwAwBS2PJ47coYKoRH/

View File

@@ -0,0 +1 @@
zino:$apr1$XBzEVqBi$9SNhwAwBS2PJ47coYKoRH/

View File

@@ -0,0 +1,9 @@
location ~ \.php$ {
resolver 127.0.0.11;
set $upstream "php-fpm:9000";
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_index index.php;
fastcgi_pass $upstream;
}

View File

@@ -0,0 +1,78 @@
log_format registry_json escape=json
'{'
'"timestamp":"$time_iso8601",'
'"msec":"$msec",'
'"remote_address":"$remote_addr",'
'"remote_user":"$remote_user",'
'"request_id":"$request_id",'
'"method":"$request_method",'
'"path":"$uri",'
'"query_string":"$args",'
'"http_version":"$server_protocol",'
'"status":$status,'
'"bytes_sent":$bytes_sent,'
'"body_bytes_sent":$body_bytes_sent,'
'"request_length":$request_length,'
'"request_time":$request_time,'
'"upstream_status":"$upstream_status",'
'"upstream_time":"$upstream_response_time",'
'"upstream_addr":"$upstream_addr",'
'"referer":"$http_referer",'
'"user_agent":"$http_user_agent",'
'"x_forwarded_for":"$http_x_forwarded_for",'
'"range":"$http_range",'
'"content_range":"$sent_http_content_range",'
'"content_length":"$sent_http_content_length",'
'"etag":"$sent_http_etag",'
'"docker_content_digest":"$sent_http_docker_content_digest",'
'"arg_digest":"$arg_digest",'
'"upstream_range":"$upstream_http_range",'
'"docker_upload_uuid":"$upstream_http_docker_upload_uuid",'
'"docker_distribution_api_version":"$docker_distribution_api_version",'
'"transfer_direction":"$transfer_direction"'
'}';
map $body_bytes_sent $has_body_bytes_sent {
default 0;
~^[1-9][0-9]*$ 1;
}
map "$request_method$uri" $is_blob_get {
default 0;
~^GET/v2/.+/blobs/sha256:[a-f0-9]+$ 1;
}
map "$is_blob_get$has_body_bytes_sent" $is_pull_transfer {
default 0;
~^11$ 1;
}
map $upstream_http_range $has_upstream_range {
default 0;
~^[0-9]+-[0-9]+$ 1;
}
map "$request_method$uri" $is_upload_patch {
default 0;
~^PATCH/v2/.+/blobs/uploads/[a-f0-9-]+$ 1;
}
map "$is_upload_patch$has_upstream_range" $is_push_transfer {
default 0;
~^11$ 1;
}
map "$is_pull_transfer$is_push_transfer" $is_transfer_loggable {
default 0;
~1 1;
}
map "$is_pull_transfer$is_push_transfer" $transfer_direction {
default "-";
"10" "pull";
"01" "push";
}
map $upstream_http_docker_distribution_api_version $docker_distribution_api_version {
'' 'registry/2.0';
}

View File

@@ -1,5 +1,5 @@
ssl_protocols TLSv1.2 TLSv1.3; ssl_protocols TLSv1.2 TLSv1.3;
ssl_session_cache shared:SSL:10m; ssl_session_cache shared:SSL:50m;
ssl_session_timeout 10m; ssl_session_timeout 10m;
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always; add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;