Replace quadlets with current configuration
This commit is contained in:
parent
4a359f7d5a
commit
792b32ea02
45 changed files with 273 additions and 18 deletions
|
|
@ -8,6 +8,7 @@ PartOf=authentik.target
|
||||||
|
|
||||||
[Container]
|
[Container]
|
||||||
Image=docker.io/library/postgres:16-alpine
|
Image=docker.io/library/postgres:16-alpine
|
||||||
|
AutoUpdate=registry
|
||||||
ContainerName=authentik-postgres
|
ContainerName=authentik-postgres
|
||||||
|
|
||||||
Volume=auth_database:/var/lib/postgresql/data
|
Volume=auth_database:/var/lib/postgresql/data
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,7 @@ PartOf=authentik.target
|
||||||
|
|
||||||
[Container]
|
[Container]
|
||||||
Image=ghcr.io/goauthentik/server:2026.2.2
|
Image=ghcr.io/goauthentik/server:2026.2.2
|
||||||
|
AutoUpdate=registry
|
||||||
|
|
||||||
ContainerName=authentik-server
|
ContainerName=authentik-server
|
||||||
Exec=server
|
Exec=server
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,7 @@ PartOf=authentik.target
|
||||||
|
|
||||||
[Container]
|
[Container]
|
||||||
Image=ghcr.io/goauthentik/server:2026.2.2
|
Image=ghcr.io/goauthentik/server:2026.2.2
|
||||||
|
AutoUpdate=registry
|
||||||
|
|
||||||
ContainerName=authentik-worker
|
ContainerName=authentik-worker
|
||||||
Exec=worker
|
Exec=worker
|
||||||
|
|
@ -17,7 +18,7 @@ EnvironmentFile=%h/services/authentik/.env
|
||||||
User=root
|
User=root
|
||||||
Network=authentik.network
|
Network=authentik.network
|
||||||
|
|
||||||
Volume=/var/run/docker.sock:/var/run/docker.sock
|
Volume=/var/run/podman/podman.sock:/var/run/docker.sock
|
||||||
Volume=%h/services/authentik/data:/data
|
Volume=%h/services/authentik/data:/data
|
||||||
Volume=%h/services/authentik/certs:/certs
|
Volume=%h/services/authentik/certs:/certs
|
||||||
Volume=%h/services/authentik/custom-templates:/templates
|
Volume=%h/services/authentik/custom-templates:/templates
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,8 @@ ContainerName=forgejo-postgres
|
||||||
Environment=POSTGRES_USER={YOUR POSTGRESS USER}
|
Environment=POSTGRES_USER={YOUR POSTGRESS USER}
|
||||||
Environment=POSTGRES_PASSWORD={YOUR POSTGRESS PASSWORD}
|
Environment=POSTGRES_PASSWORD={YOUR POSTGRESS PASSWORD}
|
||||||
Environment=POSTGRES_DB=forgejo-sql
|
Environment=POSTGRES_DB=forgejo-sql
|
||||||
Image=postgres:17
|
Image=docker.io/library/postgres:17
|
||||||
|
AutoUpdate=registry
|
||||||
Network=forgejo.network
|
Network=forgejo.network
|
||||||
Volume=%h/services/forgejo/postgresql/data:/var/lib/postgresql/data
|
Volume=%h/services/forgejo/postgresql/data:/var/lib/postgresql/data
|
||||||
User=999
|
User=999
|
||||||
|
|
|
||||||
|
|
@ -11,6 +11,7 @@ ContainerName=forgejo-app
|
||||||
Environment=USER_UID=1000 USER_GID=1000
|
Environment=USER_UID=1000 USER_GID=1000
|
||||||
Environment=FORGEJO__database__HOST=forgejo-postgres
|
Environment=FORGEJO__database__HOST=forgejo-postgres
|
||||||
Image=codeberg.org/forgejo/forgejo:11
|
Image=codeberg.org/forgejo/forgejo:11
|
||||||
|
AutoUpdate=registry
|
||||||
|
|
||||||
Network=forgejo.network
|
Network=forgejo.network
|
||||||
#AddHost=(something something pasta is dogshit put domain here from host NIC):host-gateway
|
#AddHost=(something something pasta is dogshit put domain here from host NIC):host-gateway
|
||||||
|
|
|
||||||
6
mailu/config/MATRIX-STREAMPROXY-mail.conf
Normal file
6
mailu/config/MATRIX-STREAMPROXY-mail.conf
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
server {
|
||||||
|
listen 587 ssl;
|
||||||
|
proxy_pass 127.0.0.1:588;
|
||||||
|
ssl_certificate /etc/letsencrypt/live/{YOURDOMAIN.COM}/fullchain.pem;
|
||||||
|
ssl_certificate_key /etc/letsencrypt/live/{YOURDOMAIN.COM}/privkey.pem;
|
||||||
|
}
|
||||||
34
mailu/config/NGINX-mailu-web.conf
Normal file
34
mailu/config/NGINX-mailu-web.conf
Normal file
|
|
@ -0,0 +1,34 @@
|
||||||
|
server {
|
||||||
|
listen 443 ssl;
|
||||||
|
server_name mail.{YOURDOMAIN.COM};
|
||||||
|
|
||||||
|
ssl_certificate /etc/letsencrypt/live/mail.{YOURDOMAIN.COM}/fullchain.pem;
|
||||||
|
ssl_certificate_key /etc/letsencrypt/live/mail.{YOURDOMAIN.COM}/privkey.pem;
|
||||||
|
|
||||||
|
|
||||||
|
location / {
|
||||||
|
proxy_pass http://127.0.0.1:7071;
|
||||||
|
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-Proto $scheme;
|
||||||
|
|
||||||
|
sub_filter_once off;
|
||||||
|
sub_filter '</head>' '<link rel="stylesheet" href="/custom.css"></head>';
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
# custom theming stuff
|
||||||
|
# location /background.jpg {
|
||||||
|
# alias /var/www/html/nginx/background.jpg;
|
||||||
|
# add_header Access-Control-Allow-Origin *;
|
||||||
|
# }
|
||||||
|
|
||||||
|
|
||||||
|
# location /custom.css {
|
||||||
|
# alias /var/www/html/nginx/custom_mailu.css;
|
||||||
|
# default_type text/css;
|
||||||
|
# add_header Access-Control-Allow-Origin *;
|
||||||
|
#}
|
||||||
|
}
|
||||||
7
mailu/config/readme.txt
Normal file
7
mailu/config/readme.txt
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
lower your privileged ports to 24 for this to run rootlessly
|
||||||
|
|
||||||
|
containerd@terrorist-academy-mainserve:~$ sudo tee /etc/sysctl.d/99-unprivileged-port-start.conf >/dev/null <<'EOF'
|
||||||
|
net.ipv4.ip_unprivileged_port_start=24
|
||||||
|
EOF
|
||||||
|
sudo systemctl restart systemd-sysctl.service
|
||||||
|
sudo sysctl net.ipv4.ip_unprivileged_port_start
|
||||||
|
|
@ -11,6 +11,7 @@ Environment=I_KNOW_MY_SETUP_DOESNT_FIT_REQUIREMENTS_AND_WONT_FILE_ISSUES_WITHOUT
|
||||||
EnvironmentFile=%h/services/mailu/mailu.env
|
EnvironmentFile=%h/services/mailu/mailu.env
|
||||||
HostName=admin
|
HostName=admin
|
||||||
Image=ghcr.io/mailu/admin:2024.06
|
Image=ghcr.io/mailu/admin:2024.06
|
||||||
|
AutoUpdate=registry
|
||||||
LogDriver=journald
|
LogDriver=journald
|
||||||
LogOpt=tag=mailu-admin
|
LogOpt=tag=mailu-admin
|
||||||
Network=mailu-default.network:alias=admin
|
Network=mailu-default.network:alias=admin
|
||||||
|
|
|
||||||
|
|
@ -10,6 +10,7 @@ DNS=10.230.230.254
|
||||||
EnvironmentFile=%h/services/mailu/mailu.env
|
EnvironmentFile=%h/services/mailu/mailu.env
|
||||||
HostName=antispam
|
HostName=antispam
|
||||||
Image=ghcr.io/mailu/rspamd:2024.06
|
Image=ghcr.io/mailu/rspamd:2024.06
|
||||||
|
AutoUpdate=registry
|
||||||
LogDriver=journald
|
LogDriver=journald
|
||||||
LogOpt=tag=mailu-antispam
|
LogOpt=tag=mailu-antispam
|
||||||
Network=mailu-default.network
|
Network=mailu-default.network
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,8 @@ PartOf=mailu.target
|
||||||
[Container]
|
[Container]
|
||||||
ContainerName=mailu-antivirus
|
ContainerName=mailu-antivirus
|
||||||
HealthCmd=none
|
HealthCmd=none
|
||||||
Image=clamav/clamav-debian:1.4
|
Image=docker.io/clamav/clamav-debian:1.4
|
||||||
|
AutoUpdate=registry
|
||||||
LogDriver=journald
|
LogDriver=journald
|
||||||
LogOpt=tag=mailu-antivirus
|
LogOpt=tag=mailu-antivirus
|
||||||
Network=mailu-clamav.network:alias=antivirus
|
Network=mailu-clamav.network:alias=antivirus
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,7 @@ ContainerName=mailu-fetchmail
|
||||||
DNS=10.230.230.254
|
DNS=10.230.230.254
|
||||||
EnvironmentFile=%h/services/mailu/mailu.env
|
EnvironmentFile=%h/services/mailu/mailu.env
|
||||||
Image=ghcr.io/mailu/fetchmail:2024.06
|
Image=ghcr.io/mailu/fetchmail:2024.06
|
||||||
|
AutoUpdate=registry
|
||||||
LogDriver=journald
|
LogDriver=journald
|
||||||
LogOpt=tag=mailu-fetchmail
|
LogOpt=tag=mailu-fetchmail
|
||||||
Network=mailu-default.network:alias=fetchmail
|
Network=mailu-default.network:alias=fetchmail
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,7 @@ ContainerName=mailu-front
|
||||||
DNS=10.230.230.254
|
DNS=10.230.230.254
|
||||||
EnvironmentFile=%h/services/mailu/mailu.env
|
EnvironmentFile=%h/services/mailu/mailu.env
|
||||||
Image=ghcr.io/mailu/nginx:2024.06
|
Image=ghcr.io/mailu/nginx:2024.06
|
||||||
|
AutoUpdate=registry
|
||||||
LogDriver=journald
|
LogDriver=journald
|
||||||
LogOpt=tag=mailu-front
|
LogOpt=tag=mailu-front
|
||||||
Network=mailu-default.network:alias=front
|
Network=mailu-default.network:alias=front
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,8 @@ HealthRetries=3
|
||||||
HealthStartPeriod=10s
|
HealthStartPeriod=10s
|
||||||
HealthTimeout=5s
|
HealthTimeout=5s
|
||||||
HostName=tika
|
HostName=tika
|
||||||
Image=apache/tika:latest-full
|
Image=docker.io/apache/tika:latest-full
|
||||||
|
AutoUpdate=registry
|
||||||
LogDriver=journald
|
LogDriver=journald
|
||||||
LogOpt=tag=mailu-tika
|
LogOpt=tag=mailu-tika
|
||||||
Network=mailu-fts-attachments.network:alias=tika
|
Network=mailu-fts-attachments.network:alias=tika
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,7 @@ ContainerName=mailu-imap
|
||||||
DNS=10.230.230.254
|
DNS=10.230.230.254
|
||||||
EnvironmentFile=%h/services/mailu/mailu.env
|
EnvironmentFile=%h/services/mailu/mailu.env
|
||||||
Image=ghcr.io/mailu/dovecot:2024.06
|
Image=ghcr.io/mailu/dovecot:2024.06
|
||||||
|
AutoUpdate=registry
|
||||||
LogDriver=journald
|
LogDriver=journald
|
||||||
LogOpt=tag=mailu-imap
|
LogOpt=tag=mailu-imap
|
||||||
Network=mailu-default.network:alias=imap
|
Network=mailu-default.network:alias=imap
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,7 @@ ContainerName=mailu-oletools
|
||||||
DNS=10.230.230.254
|
DNS=10.230.230.254
|
||||||
HostName=oletools
|
HostName=oletools
|
||||||
Image=ghcr.io/mailu/oletools:2024.06
|
Image=ghcr.io/mailu/oletools:2024.06
|
||||||
|
AutoUpdate=registry
|
||||||
LogDriver=journald
|
LogDriver=journald
|
||||||
LogOpt=tag=mailu-oletools
|
LogOpt=tag=mailu-oletools
|
||||||
Network=mailu-oletools.network:alias=oletools
|
Network=mailu-oletools.network:alias=oletools
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,8 @@ PartOf=mailu.target
|
||||||
[Container]
|
[Container]
|
||||||
ContainerName=mailu-redis
|
ContainerName=mailu-redis
|
||||||
DNS=10.230.230.254
|
DNS=10.230.230.254
|
||||||
Image=redis:alpine
|
Image=docker.io/library/redis:alpine
|
||||||
|
AutoUpdate=registry
|
||||||
Network=mailu-default.network:alias=redis
|
Network=mailu-default.network:alias=redis
|
||||||
Volume=%h/services/mailu/redis:/data
|
Volume=%h/services/mailu/redis:/data
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,7 @@ PartOf=mailu.target
|
||||||
ContainerName=mailu-resolver
|
ContainerName=mailu-resolver
|
||||||
EnvironmentFile=%h/services/mailu/mailu.env
|
EnvironmentFile=%h/services/mailu/mailu.env
|
||||||
Image=ghcr.io/mailu/unbound:2024.06
|
Image=ghcr.io/mailu/unbound:2024.06
|
||||||
|
AutoUpdate=registry
|
||||||
LogDriver=journald
|
LogDriver=journald
|
||||||
LogOpt=tag=mailu-resolver
|
LogOpt=tag=mailu-resolver
|
||||||
Network=mailu-default.network:ip=10.230.230.254
|
Network=mailu-default.network:ip=10.230.230.254
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,7 @@ ContainerName=mailu-smtp
|
||||||
DNS=10.230.230.254
|
DNS=10.230.230.254
|
||||||
EnvironmentFile=%h/services/mailu/mailu.env
|
EnvironmentFile=%h/services/mailu/mailu.env
|
||||||
Image=ghcr.io/mailu/postfix:2024.06
|
Image=ghcr.io/mailu/postfix:2024.06
|
||||||
|
AutoUpdate=registry
|
||||||
LogDriver=journald
|
LogDriver=journald
|
||||||
LogOpt=tag=mailu-smtp
|
LogOpt=tag=mailu-smtp
|
||||||
Network=mailu-default.network:alias=smtp
|
Network=mailu-default.network:alias=smtp
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@ PartOf=mailu.target
|
||||||
[Container]
|
[Container]
|
||||||
ContainerName=mailu-webdav
|
ContainerName=mailu-webdav
|
||||||
Image=ghcr.io/mailu/radicale:2024.06
|
Image=ghcr.io/mailu/radicale:2024.06
|
||||||
|
AutoUpdate=registry
|
||||||
LogDriver=journald
|
LogDriver=journald
|
||||||
LogOpt=tag=mailu-webdav
|
LogOpt=tag=mailu-webdav
|
||||||
Network=mailu-radicale.network:alias=webdav
|
Network=mailu-radicale.network:alias=webdav
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,7 @@ PartOf=mailu.target
|
||||||
ContainerName=mailu-webmail
|
ContainerName=mailu-webmail
|
||||||
EnvironmentFile=%h/services/mailu/mailu.env
|
EnvironmentFile=%h/services/mailu/mailu.env
|
||||||
Image=ghcr.io/mailu/webmail:2024.06
|
Image=ghcr.io/mailu/webmail:2024.06
|
||||||
|
AutoUpdate=registry
|
||||||
LogDriver=journald
|
LogDriver=journald
|
||||||
LogOpt=tag=mailu-webmail
|
LogOpt=tag=mailu-webmail
|
||||||
Network=mailu-webmail.network:alias=webmail
|
Network=mailu-webmail.network:alias=webmail
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,8 @@ ContainerName=matrix-coturn
|
||||||
|
|
||||||
Environment=TURN_CERT_PATH=/etc/coturn/fullchain.pem TURN_KEY_PATH=/etc/coturn/privkey.pem
|
Environment=TURN_CERT_PATH=/etc/coturn/fullchain.pem TURN_KEY_PATH=/etc/coturn/privkey.pem
|
||||||
|
|
||||||
Image=coturn/coturn:latest
|
Image=docker.io/coturn/coturn:latest
|
||||||
|
AutoUpdate=registry
|
||||||
PublishPort=3478:3478/udp
|
PublishPort=3478:3478/udp
|
||||||
PublishPort=3478:3478/tcp
|
PublishPort=3478:3478/tcp
|
||||||
PublishPort=5349:5349/tcp
|
PublishPort=5349:5349/tcp
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,8 @@ AddCapability=NET_BIND_SERVICE
|
||||||
|
|
||||||
ContainerName=matrix-element-web
|
ContainerName=matrix-element-web
|
||||||
|
|
||||||
Image=vectorim/element-web:latest
|
Image=docker.io/vectorim/element-web:latest
|
||||||
|
AutoUpdate=registry
|
||||||
PublishPort=127.0.0.1:8445:80
|
PublishPort=127.0.0.1:8445:80
|
||||||
Volume=%h/services/matrix/element-config.json:/app/config.json:ro
|
Volume=%h/services/matrix/element-config.json:/app/config.json:ro
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@ Environment=LIVEKIT_FULL_ACCESS_HOMESERVERS=terrorist.academy
|
||||||
|
|
||||||
PublishPort=127.0.0.1:8909:8080
|
PublishPort=127.0.0.1:8909:8080
|
||||||
Image=ghcr.io/element-hq/lk-jwt-service:latest
|
Image=ghcr.io/element-hq/lk-jwt-service:latest
|
||||||
|
AutoUpdate=registry
|
||||||
AddHost=(matrixrtc.{YOURDOMAIN.COM}):host-gateway
|
AddHost=(matrixrtc.{YOURDOMAIN.COM}):host-gateway
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,8 @@ Environment="LIVEKIT_KEYS={YOUR LIVEKIT KEY}: {YOUR LIVEKIT SECRET}"
|
||||||
Environment=LIVEKIT_WS_UR=wss://matrixrtc.{YOURDOMAIN>COM}
|
Environment=LIVEKIT_WS_UR=wss://matrixrtc.{YOURDOMAIN>COM}
|
||||||
Exec=--config /etc/livekit.yaml
|
Exec=--config /etc/livekit.yaml
|
||||||
|
|
||||||
Image=livekit/livekit-server:latest
|
Image=docker.io/livekit/livekit-server:latest
|
||||||
|
AutoUpdate=registry
|
||||||
PublishPort=127.0.0.1:7880:7880
|
PublishPort=127.0.0.1:7880:7880
|
||||||
PublishPort=50100-50200:50100-50200/udp
|
PublishPort=50100-50200:50100-50200/udp
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,8 @@ ContainerName=matrix-postgres
|
||||||
Environment=POSTGRES_PASSWORD={YOUR POSTGRES PASSWORD}
|
Environment=POSTGRES_PASSWORD={YOUR POSTGRES PASSWORD}
|
||||||
Environment=POSTGRES_USER=synapse
|
Environment=POSTGRES_USER=synapse
|
||||||
HostName=matrix-postres
|
HostName=matrix-postres
|
||||||
Image=postgres:14
|
Image=docker.io/library/postgres:14
|
||||||
|
AutoUpdate=registry
|
||||||
|
|
||||||
Volume=%h/services/matrix/pgdata:/var/lib/postgresql/data
|
Volume=%h/services/matrix/pgdata:/var/lib/postgresql/data
|
||||||
Volume=%h/services/matrix/turn:/var/lib/turn
|
Volume=%h/services/matrix/turn:/var/lib/turn
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,8 @@ PartOf=matrix.target
|
||||||
[Container]
|
[Container]
|
||||||
ContainerName=matrix-synapse-admin
|
ContainerName=matrix-synapse-admin
|
||||||
HostName=synapse-admin
|
HostName=synapse-admin
|
||||||
Image=awesometechnologies/synapse-admin:latest
|
Image=docker.io/awesometechnologies/synapse-admin:latest
|
||||||
|
AutoUpdate=registry
|
||||||
PublishPort=127.0.0.1:9092:80
|
PublishPort=127.0.0.1:9092:80
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
|
|
|
||||||
|
|
@ -12,7 +12,8 @@ ContainerName=matrix-synapse
|
||||||
Environment=SYNAPSE_SERVER_NAME={YOURDOMAIN.COM}
|
Environment=SYNAPSE_SERVER_NAME={YOURDOMAIN.COM}
|
||||||
Environment=SYNAPSE_REPORT_STATS=no
|
Environment=SYNAPSE_REPORT_STATS=no
|
||||||
|
|
||||||
Image=matrixdotorg/synapse:latest
|
Image=docker.io/matrixdotorg/synapse:latest
|
||||||
|
AutoUpdate=registry
|
||||||
PublishPort=127.0.0.1:8008:8008
|
PublishPort=127.0.0.1:8008:8008
|
||||||
PublishPort=127.0.0.1:8449:8448
|
PublishPort=127.0.0.1:8449:8448
|
||||||
|
|
||||||
|
|
|
||||||
50
nextcloud/quadlets/nextcloud-app.container
Normal file
50
nextcloud/quadlets/nextcloud-app.container
Normal file
|
|
@ -0,0 +1,50 @@
|
||||||
|
[Unit]
|
||||||
|
Description=nextcloud server
|
||||||
|
|
||||||
|
Requires=nextcloud-postgres.service nextcloud-redis.service
|
||||||
|
After=nextcloud-postgres.service nextcloud-redis.service
|
||||||
|
|
||||||
|
PartOf=nextcloud.target
|
||||||
|
|
||||||
|
[Container]
|
||||||
|
AddCapability=NET_BIND_SERVICE
|
||||||
|
ContainerName=nextcloud-app
|
||||||
|
|
||||||
|
Environment=POSTGRES_DB={YOUR DATABASE}
|
||||||
|
Environment=POSTGRES_USER={YOUR DB USER}
|
||||||
|
Environment=POSTGRES_PASSWORD={YOUR DB PASSWORD}
|
||||||
|
Environment=APACHE_LISTEN=0.0.0.0:80
|
||||||
|
Environment=APACHE_SERVER_NAME={YOURDOMAIN.COM
|
||||||
|
Environment=NEXTCLOUD_DATA_DIR=/var/www/html/data
|
||||||
|
Environment=REDIS_HOST=nextcloud-redis
|
||||||
|
Environment=TRUSTED_PROXIES=0.0.0.0/0
|
||||||
|
Environment=NEXTCLOUD_TRUSTED_DOMAINS={YOURDOMAIN.COM}
|
||||||
|
Environment=NEXTCLOUD_INIT_HTACCESS=true
|
||||||
|
Environment=OVERWRITEPROTOCOL=https
|
||||||
|
Environment=OVERWRITECLIURL={https://YOURDOMAIN.COM}
|
||||||
|
Environment=PHP_MEMORY_LIMIT=20G
|
||||||
|
Environment=PHP_UPLOAD_LIMIT=100G
|
||||||
|
Environment=PHP_POST_MAX_SIZE=100G
|
||||||
|
Environment=APACHE_BODY_LIMIT=2147483647
|
||||||
|
Environment=PHP_OPCACHE_MEMORY_CONSUMPTION=512
|
||||||
|
Environment=POSTGRES_HOST=nextcloud-postgres
|
||||||
|
|
||||||
|
#AddHost=(something something pasta is dogshit put domain here from host NIC):host-gateway
|
||||||
|
|
||||||
|
Image=docker.io/library/nextcloud:apache
|
||||||
|
AutoUpdate=registry
|
||||||
|
Network=nextcloud.network
|
||||||
|
PublishPort=127.0.0.1:11000:80
|
||||||
|
Volume=%h/services/nextcloud/tmp:/tmp
|
||||||
|
Volume=%h/services/nextcloud/html:/var/www/html
|
||||||
|
Volume=%h/services/nextcloud/data:/mnt/data
|
||||||
|
Volume=%h/services/nextcloud/storage1:/mnt/storage1
|
||||||
|
Volume=%h/services/nextcloud/redis-session.ini:/usr/local/etc/php/conf.d/redis-session.ini
|
||||||
|
Volume=/etc/timezone:/etc/timezone:ro
|
||||||
|
Volume=/etc/localtime:/etc/localtime:ro
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Restart=always
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=nextcloud.target
|
||||||
22
nextcloud/quadlets/nextcloud-collabora.container
Normal file
22
nextcloud/quadlets/nextcloud-collabora.container
Normal file
|
|
@ -0,0 +1,22 @@
|
||||||
|
[Unit]
|
||||||
|
Description=nextcloud collabora
|
||||||
|
|
||||||
|
PartOf=nextcloud.target
|
||||||
|
|
||||||
|
[Container]
|
||||||
|
AddCapability=MKNOD
|
||||||
|
ContainerName=nextcloud-collabora
|
||||||
|
Environment=DONT_GEN_SSL_CERT=true
|
||||||
|
Environment="extra_params=--o:ssl.enable=false --o:ssl.termination=true --o:net.post_allow.host[0]=YOURDOMAIN.COM --o:storage.wopi.host[0]=YOURDOMAIN.COM"
|
||||||
|
Environment=domain=collabora\.YOURDOMAIN\.COM
|
||||||
|
Image=docker.io/collabora/code:latest
|
||||||
|
AutoUpdate=registry
|
||||||
|
Network=nextcloud.network
|
||||||
|
PublishPort=127.0.0.1:9980:9980
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Restart=always
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=nextcloud.target
|
||||||
|
|
||||||
12
nextcloud/quadlets/nextcloud-cron.service
Normal file
12
nextcloud/quadlets/nextcloud-cron.service
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
[Unit]
|
||||||
|
Description=nextcloud cron service
|
||||||
|
Requires=nextcloud-app.service
|
||||||
|
After=nextcloud.target nextcloud-app.service
|
||||||
|
PartOf=nextcloud.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=oneshot
|
||||||
|
ExecStart=/usr/bin/podman exec -u www-data nextcloud-app php -f /var/www/html/cron.php
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=nextcloud.target
|
||||||
20
nextcloud/quadlets/nextcloud-postgres.container
Normal file
20
nextcloud/quadlets/nextcloud-postgres.container
Normal file
|
|
@ -0,0 +1,20 @@
|
||||||
|
[Unit]
|
||||||
|
Description=nextlcoud postgres
|
||||||
|
|
||||||
|
PartOf=nextcloud.target
|
||||||
|
|
||||||
|
[Container]
|
||||||
|
ContainerName=nextcloud-postgres
|
||||||
|
Environment=POSTGRES_DB={YOUR POSTGRES DB}
|
||||||
|
Environment=POSTGRES_USER={YOUR POSTGRES USER}
|
||||||
|
Environment=POSTGRES_PASSWORD={YOUR POSTGRES PASSWORD}
|
||||||
|
Image=docker.io/library/postgres:17
|
||||||
|
AutoUpdate=registry
|
||||||
|
Network=nextcloud.network
|
||||||
|
Volume=%h/services/nextcloud/postgresql/data:/var/lib/postgresql/data
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Restart=always
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=nextcloud.target
|
||||||
18
nextcloud/quadlets/nextcloud-redis.container
Normal file
18
nextcloud/quadlets/nextcloud-redis.container
Normal file
|
|
@ -0,0 +1,18 @@
|
||||||
|
[Unit]
|
||||||
|
Description=nextcloud redis
|
||||||
|
|
||||||
|
PartOf=nextcloud.target
|
||||||
|
|
||||||
|
[Container]
|
||||||
|
ContainerName=nextcloud-redis
|
||||||
|
Image=docker.io/library/redis:7
|
||||||
|
AutoUpdate=registry
|
||||||
|
Network=nextcloud.network
|
||||||
|
Volume=%h/services/nextcloud/redis-session.ini:/usr/local/etc/php/conf.d/redis-session.ini
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Restart=always
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=nextcloud.target
|
||||||
|
|
||||||
17
nextcloud/quadlets/nextcloud-valkey.container
Normal file
17
nextcloud/quadlets/nextcloud-valkey.container
Normal file
|
|
@ -0,0 +1,17 @@
|
||||||
|
[Unit]
|
||||||
|
Description=nextcloud valkey
|
||||||
|
|
||||||
|
PartOf=nextcloud.target
|
||||||
|
|
||||||
|
[Container]
|
||||||
|
ContainerName=nextcloud-valkey
|
||||||
|
Image=docker.io/valkey/valkey:8-alpine
|
||||||
|
AutoUpdate=registry
|
||||||
|
Network=nextcloud.network
|
||||||
|
Volume=%h/services/nextcloud/valkey:/data
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Restart=always
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=nextcloud.target
|
||||||
6
nextcloud/quadlets/nextcloud.network
Normal file
6
nextcloud/quadlets/nextcloud.network
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
[Unit]
|
||||||
|
Description=Nextcloud podman network
|
||||||
|
|
||||||
|
[Network]
|
||||||
|
Driver=bridge
|
||||||
|
NetworkName=nextcloud
|
||||||
20
nextcloud/quadlets/nextcloud.target
Normal file
20
nextcloud/quadlets/nextcloud.target
Normal file
|
|
@ -0,0 +1,20 @@
|
||||||
|
[Unit]
|
||||||
|
Description=Nextcloud container stack
|
||||||
|
|
||||||
|
Wants=nextcloud-app.service
|
||||||
|
Wants=nextcloud-collabora.service
|
||||||
|
Wants=nextcloud-postgres.service
|
||||||
|
Wants=nextcloud-redis.service
|
||||||
|
Wants=nextcloud-valkey.service
|
||||||
|
Wants=nextcloud-network.service
|
||||||
|
Wants=nextcloud-cron.timer
|
||||||
|
|
||||||
|
After=nextcloud-network.service
|
||||||
|
After=nextcloud-postgres.service
|
||||||
|
After=nextcloud-redis.service
|
||||||
|
After=nextcloud-valkey.service
|
||||||
|
After=nextcloud-collabora.service
|
||||||
|
After=nextcloud-app.service
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=default.target
|
||||||
12
nextcloud/quadlets/nextcloud.timer
Normal file
12
nextcloud/quadlets/nextcloud.timer
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
[Unit]
|
||||||
|
Description=nextcloud cron timer
|
||||||
|
PartOf=nextcloud.target
|
||||||
|
After=nextcloud.target
|
||||||
|
|
||||||
|
[Timer]
|
||||||
|
OnBootSec=5min
|
||||||
|
OnUnitActiveSec=5min
|
||||||
|
Unit=nextcloud-cron.service
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=nextcloud.target
|
||||||
|
|
@ -11,7 +11,8 @@ Environment=POSTGRES_USER=opentogethertube
|
||||||
Environment=POSTGRES_PASSWORD={YOUR PASSWORD}
|
Environment=POSTGRES_PASSWORD={YOUR PASSWORD}
|
||||||
|
|
||||||
HealthCmd=pg_isready -U opentogethertube
|
HealthCmd=pg_isready -U opentogethertube
|
||||||
Image=postgres:15-bullseye
|
Image=docker.io/library/postgres:15-bullseye
|
||||||
|
AutoUpdate=registry
|
||||||
Network=opentogethertube.network
|
Network=opentogethertube.network
|
||||||
Volume=%h/services/opentogethertube/postgres:/var/lib/postgresql/data
|
Volume=%h/services/opentogethertube/postgres:/var/lib/postgresql/data
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,8 @@ PartOf=opentogethertube.target
|
||||||
|
|
||||||
ContainerName=opentogethertube-redis
|
ContainerName=opentogethertube-redis
|
||||||
HealthCmd=redis-cli ping
|
HealthCmd=redis-cli ping
|
||||||
Image=redis
|
Image=docker.io/library/redis:latest
|
||||||
|
AutoUpdate=registry
|
||||||
Network=opentogethertube.network
|
Network=opentogethertube.network
|
||||||
Volume=%h/services/opentogethertube/redis:/data
|
Volume=%h/services/opentogethertube/redis:/data
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,8 @@ Environment=POSTGRES_HOST=opentogethertube-postgres
|
||||||
Environment=POSTGRES_PASSWORD={YOUR PASSWORD}
|
Environment=POSTGRES_PASSWORD={YOUR PASSWORD}
|
||||||
Environment=DOCKER=1
|
Environment=DOCKER=1
|
||||||
|
|
||||||
Image=dyc3/opentogethertube:latest
|
Image=docker.io/dyc3/opentogethertube:latest
|
||||||
|
AutoUpdate=registry
|
||||||
|
|
||||||
Network=opentogethertube.network
|
Network=opentogethertube.network
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,9 @@
|
||||||
[Unit]
|
[Unit]
|
||||||
Description=opentogethertube container stack
|
Description=opentogethertube container stack
|
||||||
|
|
||||||
Wants=opentogethertube-redis_db.service
|
Wants=opentogethertube-redis.service
|
||||||
Wants=opentogethertube-server.service
|
Wants=opentogethertube-server.service
|
||||||
Wants=opentogethertube-postgres_db.service
|
Wants=opentogethertube-postgres.service
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=default.target
|
WantedBy=default.target
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,8 @@ PartOf=singlestarget
|
||||||
[Container]
|
[Container]
|
||||||
ContainerName=gatus
|
ContainerName=gatus
|
||||||
Environment=TZ=Europe/Amsterdam
|
Environment=TZ=Europe/Amsterdam
|
||||||
Image=twinproduction/gatus:latest
|
Image=docker.io/twinproduction/gatus:latest
|
||||||
|
AutoUpdate=registry
|
||||||
Volume=%h/services/singles/gatus/config:/config
|
Volume=%h/services/singles/gatus/config:/config
|
||||||
Volume=%h/services/singles/gatus/data:/data/
|
Volume=%h/services/singles/gatus/data:/data/
|
||||||
Volume=/etc/timezone:/etc/timezone:ro
|
Volume=/etc/timezone:/etc/timezone:ro
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,7 @@ ContainerName=homepage
|
||||||
Environment=HOMEPAGE_ALLOWED_HOSTS={YOURDOMAIN.COM}
|
Environment=HOMEPAGE_ALLOWED_HOSTS={YOURDOMAIN.COM}
|
||||||
Environment=PUID=1000 PGID=1000
|
Environment=PUID=1000 PGID=1000
|
||||||
Image=ghcr.io/gethomepage/homepage:latest
|
Image=ghcr.io/gethomepage/homepage:latest
|
||||||
|
AutoUpdate=registry
|
||||||
Volume=%h/services/singles/homepage/config:/app/config
|
Volume=%h/services/singles/homepage/config:/app/config
|
||||||
Volume=%h/services/singles/homepage/assets:/app/public/images
|
Volume=%h/services/singles/homepage/assets:/app/public/images
|
||||||
Volume=/home:/home
|
Volume=/home:/home
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,7 @@ PartOf=singlestarget
|
||||||
ContainerName=searxng
|
ContainerName=searxng
|
||||||
Environment=USER_UID=1000 USER_GID=1000
|
Environment=USER_UID=1000 USER_GID=1000
|
||||||
Image=docker.io/searxng/searxng:latest
|
Image=docker.io/searxng/searxng:latest
|
||||||
|
AutoUpdate=registry
|
||||||
PublishPort=127.0.0.1:8889:8080
|
PublishPort=127.0.0.1:8889:8080
|
||||||
Volume=%h/services/singles/searxng/config:/etc/searxng
|
Volume=%h/services/singles/searxng/config:/etc/searxng
|
||||||
Volume=%h/services/singles/searxng/cache:/cache/searxng
|
Volume=%h/services/singles/searxng/cache:/cache/searxng
|
||||||
|
|
|
||||||
|
|
@ -10,4 +10,4 @@ After=homepage.service
|
||||||
After=searxng.service
|
After=searxng.service
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=install.target
|
WantedBy=default.target
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue