This commit is contained in:
2025-07-20 13:15:46 +00:00
parent 63b2e5900a
commit 1cd2810480
13 changed files with 176 additions and 34 deletions

View File

@@ -11,4 +11,4 @@ services:
REGISTRY_STORAGE_FILESYSTEM_ROOTDIRECTORY: /data REGISTRY_STORAGE_FILESYSTEM_ROOTDIRECTORY: /data
volumes: volumes:
- ./auth:/auth - ./auth:/auth
- /mnt/Teka2/docker-registry:/data - /data/services/docker-registry:/data

View File

@@ -23,7 +23,7 @@ services:
networks: networks:
- gitea - gitea
volumes: volumes:
- /mnt/Teka2/gitea-data:/data - /data/services/gitea-data:/data
- /etc/timezone:/etc/timezone:ro - /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro - /etc/localtime:/etc/localtime:ro
ports: ports:

View File

@@ -1,15 +1,28 @@
# rtmp_auto_push on;
server { server {
listen 1935; listen 1935;
# chunk_size 4096; chunk_size 4096;
application stream { application phone_c701cb2f_5843_4979_9d39_01f4563e4980 {
live on; live on;
record off;
# recorder rec1 { allow publish all;
# record all; allow play all;
# record_path /var/rec;
# record_unique on;
# }
} }
application gopro_c701cb2f_5843_4979_9d39_01f4563e4980 {
live on;
record off;
allow publish all;
allow play all;
}
# application live {
# live on;
# record off;
# deny play all;
# dash on;
# dash_path /mnt/Teka2/live-data/stream/;
# }
} }

View File

@@ -23,8 +23,8 @@ server {
} # managed by Certbot } # managed by Certbot
listen 80;
server_name auth.maksim-pankov.ru; server_name auth.maksim-pankov.ru;
listen 80;
return 404; # managed by Certbot return 404; # managed by Certbot

View File

@@ -0,0 +1,90 @@
server {
server_name media.maksim-pankov.ru;
set $webdav_root "/mnt/Teka1/media_data";
location / {
root $webdav_root;
error_page 599 = @propfind_handler;
error_page 598 = @delete_handler;
chunked_transfer_encoding on;
open_file_cache off;
client_max_body_size 5g;
add_header Allow 'OPTIONS, GET, HEAD, PROPFIND';
if ($request_method = PROPFIND) {
return 599;
}
if ($request_method = PROPPATCH) { # Unsupported, allways return OK.
add_header Content-Type 'text/xml';
return 207 '<?xml version="1.0"?><a:multistatus xmlns:a="DAV:"><a:response><a:propstat><a:status>HTTP/1.1 200 OK</a:status></a:propstat></a:response></a:multistatus>';
}
if ($request_method = MKCOL) { # Microsoft specific handle: add trailing slash.
rewrite ^(.*[^/])$ $1/;
}
# if ($request_method = DELETE) {
# return 598;
# }
if ($request_method = OPTIONS) {
add_header Allow 'OPTIONS, GET, HEAD, PROPFIND, PROPPATCH, LOCK, UNLOCK';
add_header DAV '1, 2';
return 200;
}
dav_ext_methods OPTIONS;
create_full_put_path on;
dav_access user:r group:r all:r;
autoindex on;
charset utf-8;
auth_basic "Media Server";
auth_basic_user_file /etc/nginx/htpasswd;
}
location @propfind_handler {
internal;
open_file_cache off;
if (!-e $webdav_root/$uri) { # Microsoft specific handle.
return 404;
}
root $webdav_root;
dav_ext_methods PROPFIND;
}
location @delete_handler {
internal;
open_file_cache off;
if (-d $webdav_root/$uri) { # Add trailing slash to dirs.
rewrite ^(.*[^/])$ $1/;
}
root $webdav_root;
dav_methods DELETE;
}
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/media.maksim-pankov.ru/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/media.maksim-pankov.ru/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
server {
if ($host = media.maksim-pankov.ru) {
return 301 https://$host$request_uri;
} # managed by Certbot
server_name media.maksim-pankov.ru;
listen 80;
return 404; # managed by Certbot
}

View File

@@ -10,8 +10,11 @@ server {
alias /mnt/Teka2/site-data/; alias /mnt/Teka2/site-data/;
} }
large_client_header_buffers 4 32k; location /live-data/ {
proxy_pass http://192.168.0.105:7788/;
}
large_client_header_buffers 4 32k;
listen 443 ssl; # managed by Certbot listen 443 ssl; # managed by Certbot
@@ -22,6 +25,7 @@ server {
} }
server { server {
if ($host = maksim-pankov.ru) { if ($host = maksim-pankov.ru) {
return 301 https://$host$request_uri; return 301 https://$host$request_uri;

View File

@@ -0,0 +1,33 @@
server {
server_name stream.maksim-pankov.ru;
location /stats {
if ($request_method = "GET") {
add_header "Access-Control-Allow-Origin" *;
}
rtmp_stat all;
# rtmp_stat_stylesheet /stat.xsl;
}
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/stream.maksim-pankov.ru/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/stream.maksim-pankov.ru/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}server {
if ($host = stream.maksim-pankov.ru) {
return 301 https://$host$request_uri;
} # managed by Certbot
server_name stream.maksim-pankov.ru;
listen 80;
return 404; # managed by Certbot
}

View File

@@ -1,5 +1,11 @@
/mnt/Teka1/nextcloud:/var/www/html restore www-data dir
chown -R www-data:www-data /data/services/nextcloud
find ./nextcloud -type f -exec chmod 640 '{}' \;
find ./nextcloud -type d -exec chmod 750 '{}' \;
/mnt/Teka1/:/mnt/Teka1/ ===
/mnt/Teka2/:/mnt/Teka2/ login redirect 303:
/mnt/Teka3/:/mnt/Teka3/ chmod a+rwx /tmp inside docker as root
====
docker exec -it --user www-data nextcloud-app-1 php occ list

View File

@@ -27,7 +27,7 @@ $CONFIG = array (
'datadirectory' => '/var/www/html/data', 'datadirectory' => '/var/www/html/data',
'dbtype' => 'pgsql', 'dbtype' => 'pgsql',
'version' => '25.0.4.1', 'version' => '25.0.4.1',
'overwritehost' => 'skazochnik.spb.ru', 'overwritehost' => 'cloud.maksim-pankov.ru',
'overwriteprotocol' => 'https', 'overwriteprotocol' => 'https',
'dbname' => 'nextcloud', 'dbname' => 'nextcloud',
'dbhost' => '192.168.0.101', 'dbhost' => '192.168.0.101',
@@ -42,5 +42,5 @@ $CONFIG = array (
), ),
'maintenance' => false, 'maintenance' => false,
'overwrite.cli.url' => 'https://gipat:5002', 'overwrite.cli.url' => 'https://gipat:5002',
'loglevel' => 2, 'loglevel' => 0,
); );

View File

@@ -3,10 +3,8 @@ services:
image: "nextcloud" image: "nextcloud"
restart: always restart: always
volumes: volumes:
- /mnt/Teka1/nextcloud:/var/www/html - /data/services/nextcloud:/var/www/html
- /mnt/Teka1/:/mnt/Teka1/ # - /data/p2p/:/mnt/p2p/
- /mnt/Teka2/:/mnt/Teka2/
- /mnt/Teka3/:/mnt/Teka3/
ports: ports:
- 5002:80 - 5002:80
environment: environment:

View File

@@ -8,8 +8,8 @@ services:
volumes: volumes:
- "./config:/app/data/config" - "./config:/app/data/config"
- "./db-data:/app/data/db" - "./db-data:/app/data/db"
- "/mnt/Teka2/photos:/app/data/images/photos:ro" - "/data/photos:/app/data/images/photos:ro"
- "/mnt/Teka1/nextcloud/data/maksim/files/Автозагрузка/Camera:/app/data/images/autoload:ro" - "/data/services/nextcloud/data/maksim/files/Автозагрузка/Camera:/app/data/images/autoload:ro"
- "./tmp:/app/data/tmp" - "./tmp:/app/data/tmp"
ports: ports:
- 7780:80 - 7780:80

View File

@@ -50,7 +50,7 @@
"rpc-enabled": true, "rpc-enabled": true,
"rpc-host-whitelist": "", "rpc-host-whitelist": "",
"rpc-host-whitelist-enabled": false, "rpc-host-whitelist-enabled": false,
"rpc-password": "{5df10b8d5ce87dc9599e117461688a7485e986f7LhkfMMb9", "rpc-password": "{1db3d4c97d8d60ba8e56be621538afd953462aaazEoSb0N8",
"rpc-port": 9091, "rpc-port": 9091,
"rpc-socket-mode": "0750", "rpc-socket-mode": "0750",
"rpc-url": "/transmission/", "rpc-url": "/transmission/",

View File

@@ -12,13 +12,11 @@ services:
# - PEERPORT= #optional # - PEERPORT= #optional
# - HOST_WHITELIST= #optional # - HOST_WHITELIST= #optional
volumes: volumes:
- /mnt/Teka1/Videos:/mnt/Teka1/Videos - /data/p2p:/mnt/p2p
- /mnt/Teka2/Videos:/mnt/Teka2/Videos
- /mnt/Teka2/site-data:/mnt/Teka2/site-data
- /mnt/Share:/mnt/Share
- ./data/config:/config - ./data/config:/config
ports: ports:
- 9091:9091 - 9091:9091
- 51413:51413 - 51413:51413
- 51413:51413/udp - 51413:51413/udp
restart: always restart: unless-stopped