Compare commits

...

115 Commits

Author SHA1 Message Date
79c859e876 build 2025-12-14 10:45:29 +01:00
d333a7928b build 2025-12-14 10:43:26 +01:00
f6d4ec9801 build 2025-12-14 10:40:22 +01:00
79fc3b6880 build 2025-12-14 10:34:40 +01:00
c373e27f68 build 2025-12-14 10:30:34 +01:00
17db71682e build 2025-12-14 10:28:24 +01:00
67b908b5ad build 2025-12-14 10:22:19 +01:00
2a2aa81e5f build 2025-12-14 10:08:30 +01:00
b6d6c62071 build 2025-12-14 10:05:40 +01:00
cc0df08051 build 2025-12-14 02:06:26 +01:00
bf2772103a build 2025-12-14 02:05:47 +01:00
e23498073d build 2025-12-14 02:04:35 +01:00
a75e61ef72 build 2025-12-14 02:04:03 +01:00
d0d3a56a7c build 2025-12-14 02:03:02 +01:00
c6d44a83e2 build 2025-12-14 01:50:14 +01:00
91d00911e5 build 2025-12-14 01:19:08 +01:00
9594626646 build 2025-12-13 21:26:29 +01:00
e96c3015fb build 2025-12-13 15:17:49 +01:00
5b340d6b3d build 2025-12-12 18:10:59 +01:00
94c59d85fc build 2025-12-12 18:07:34 +01:00
f78408484b build 2025-12-12 16:42:51 +01:00
42adb45e9f build 2025-12-12 16:38:53 +01:00
e986f77d26 build 2025-12-12 16:32:23 +01:00
4e1dcb5009 build 2025-12-12 16:25:04 +01:00
4f7c3a285c build 2025-12-12 16:23:39 +01:00
62cab99470 build 2025-12-12 16:22:47 +01:00
1bc1b0dcb9 build 2025-12-12 16:19:03 +01:00
b37bf9f699 build 2025-12-12 16:02:28 +01:00
bed32a51a6 build 2025-12-12 16:00:49 +01:00
cf04cb7f74 build 2025-12-12 15:57:16 +01:00
c835e3fbea build 2025-12-12 15:55:48 +01:00
6affd9f1a4 build 2025-12-12 15:53:56 +01:00
9a064b469e build 2025-12-12 15:23:20 +01:00
c206590073 build 2025-12-12 15:18:18 +01:00
565b25dc9b build 2025-12-12 12:16:10 +01:00
24179fade8 build 2025-12-11 17:12:09 +01:00
1ed48b84c4 build 2025-12-11 16:45:19 +01:00
2cf269a868 build 2025-12-10 23:42:15 +01:00
c01c495b41 build 2025-12-10 23:34:38 +01:00
e2748ccda8 build 2025-12-10 23:33:15 +01:00
a4eb29de87 build 2025-12-10 23:25:37 +01:00
005616c0a6 Merge branch 'main' of gitlab.sectorq.eu:home/docker-compose 2025-12-10 23:24:13 +01:00
74213b1de9 build 2025-12-10 23:23:26 +01:00
ladislav.dusa
f3de9e0995 build 2025-12-09 09:21:14 +01:00
ladislav.dusa
f82f7e0f25 build 2025-12-09 09:20:58 +01:00
a98a226099 build 2025-12-08 18:57:14 +01:00
f6536c0e6c build 2025-12-08 18:53:19 +01:00
b73b3dc929 build 2025-12-08 18:15:05 +01:00
4e8fe0a1a1 build 2025-12-08 18:14:12 +01:00
6484de18e8 build 2025-12-08 18:00:55 +01:00
a92d32e73b build 2025-12-08 16:51:22 +01:00
178f30e9f1 build 2025-12-08 16:49:06 +01:00
121abc76b0 build 2025-12-08 16:48:20 +01:00
62a3ba833f build 2025-12-08 16:47:44 +01:00
cd2dc573f4 build 2025-12-08 16:46:24 +01:00
7b6229bb39 build 2025-12-08 16:41:58 +01:00
f06bcd22a6 build 2025-12-08 16:41:10 +01:00
fa00fadccf build 2025-12-08 16:06:47 +01:00
4537da6174 build 2025-12-08 15:21:02 +01:00
020b784632 build 2025-12-08 15:20:18 +01:00
2963ee88f9 build 2025-12-08 15:08:41 +01:00
682a727d50 build 2025-12-08 14:02:49 +01:00
fca4bb4508 build 2025-12-08 00:02:56 +01:00
8f2d400301 build 2025-12-07 23:25:42 +01:00
bc41a0431d build 2025-12-07 23:22:52 +01:00
838fe4ed2a build 2025-12-07 23:21:54 +01:00
d932db7b28 build 2025-12-07 23:18:19 +01:00
abaf235fed build 2025-12-07 21:13:21 +01:00
914bd21457 build 2025-12-07 21:04:38 +01:00
0a746ab637 build 2025-12-07 21:01:33 +01:00
3191ca5b55 build 2025-12-07 21:00:52 +01:00
5a2235ae06 build 2025-12-07 20:59:57 +01:00
4f212e10f2 build 2025-12-07 20:54:15 +01:00
fc0ea98def build 2025-12-07 20:47:22 +01:00
0d9b5ef975 build 2025-12-07 20:44:01 +01:00
4ce8f2ec9f build 2025-12-07 20:40:26 +01:00
5f24941a59 build 2025-12-07 20:32:19 +01:00
fe563de936 build 2025-12-07 20:17:21 +01:00
324244afac build 2025-12-07 20:06:38 +01:00
106e53fd0e build 2025-12-07 20:05:50 +01:00
ecdbbfb69f build 2025-12-07 20:00:33 +01:00
eb676c9dc6 build 2025-12-07 13:24:10 +01:00
139908ad56 build 2025-12-07 13:19:02 +01:00
46a0ae669c build 2025-12-07 13:16:00 +01:00
4708260c5c build 2025-12-07 13:11:24 +01:00
8fedeb155a build 2025-12-07 13:05:41 +01:00
bd29257d19 build 2025-12-07 13:04:52 +01:00
f5628ee014 build 2025-12-07 12:55:51 +01:00
b70c372e07 build 2025-12-06 16:38:51 +01:00
dcee21d9d5 build 2025-12-06 16:36:27 +01:00
5748b06dee build 2025-12-06 16:32:49 +01:00
042a50b572 build 2025-12-06 16:27:33 +01:00
80781812de build 2025-12-06 16:26:01 +01:00
718dd27570 build 2025-12-06 16:22:19 +01:00
d2e18a53e6 build 2025-12-06 16:20:53 +01:00
7a5291fb37 build 2025-12-06 16:19:30 +01:00
5651b03906 build 2025-12-06 16:18:26 +01:00
246dc997b5 build 2025-12-06 16:17:27 +01:00
81b430e23d build 2025-12-06 16:15:23 +01:00
43b82acc66 build 2025-12-06 16:12:53 +01:00
7b95fd74cd build 2025-12-06 16:10:40 +01:00
403f9396c5 build 2025-12-06 16:08:57 +01:00
1f82d674f8 build 2025-12-06 16:06:47 +01:00
6f66064c8b build 2025-12-06 16:05:02 +01:00
504eb1229a build 2025-12-06 16:01:52 +01:00
c5c66dc914 build 2025-12-06 15:59:44 +01:00
b7efad7a12 build 2025-12-06 15:55:55 +01:00
4d98f7f39e build 2025-12-06 15:53:02 +01:00
f449431a91 build 2025-12-06 15:51:42 +01:00
8f36939703 build 2025-12-06 15:48:47 +01:00
136e637aed build 2025-12-06 15:46:41 +01:00
6ba2c2dd0f build 2025-12-06 15:27:44 +01:00
b4961f5961 build 2025-12-06 15:14:25 +01:00
e34addb608 build 2025-12-06 15:11:35 +01:00
89321a9b46 build 2025-12-06 15:10:34 +01:00
25 changed files with 374 additions and 191 deletions

View File

@@ -3,7 +3,7 @@ PG_USER=authentik
PG_DB=authentik PG_DB=authentik
AUTHENTIK_SECRET_KEY=ZKkVCxj8kKj5ZklvzxKG2IgYQOftDoLPRjc57yomr1qzbKEQVZ AUTHENTIK_SECRET_KEY=ZKkVCxj8kKj5ZklvzxKG2IgYQOftDoLPRjc57yomr1qzbKEQVZ
AUTHENTIK_ERROR_REPORTING__ENABLED=true AUTHENTIK_ERROR_REPORTING__ENABLED=true
AUTHENTIK_TAG=2025.8.4 AUTHENTIK_TAG=2025.10.2
POSTGRES_PASSWORD=499NU6Ze5HcJK4IwSShO8oDbj3j0i0CalyEzfgEp POSTGRES_PASSWORD=499NU6Ze5HcJK4IwSShO8oDbj3j0i0CalyEzfgEp
POSTGRES_USER=authentik POSTGRES_USER=authentik
POSTGRES_DB=authentik POSTGRES_DB=authentik

View File

@@ -35,7 +35,7 @@ services:
homepage.name: Gitea homepage.name: Gitea
homepage.server: my-docker-swarm homepage.server: my-docker-swarm
homepage.weight: '1' homepage.weight: '1'
homepage.widget.key: ${TOKEN} homepage.widget.key: "b7b6e21beb7489c170215e2b7ae0d9b0099132d6"
homepage.widget.type: ${APPNAME} homepage.widget.type: ${APPNAME}
homepage.widget.url: https://${APPNAME}.sectorq.eu homepage.widget.url: https://${APPNAME}.sectorq.eu
homepage.widget.version: '2' homepage.widget.version: '2'
@@ -56,6 +56,7 @@ services:
GITEA_RUNNER_NAME: jaydee GITEA_RUNNER_NAME: jaydee
GITEA_RUNNER_LABELS: jaydee GITEA_RUNNER_LABELS: jaydee
volumes: volumes:
- runner_config:/config - runner_config:/config
- runner_data:/data - runner_data:/data
- /var/run/docker.sock:/var/run/docker.sock - /var/run/docker.sock:/var/run/docker.sock

View File

@@ -1,5 +1,16 @@
services: services:
runner:
container_name: gitlab-runner
restart: always
volumes:
- runner:/etc/gitlab-runner
- /var/run/docker.sock:/var/run/docker.sock
image: ${DOCKER_REGISTRY:-}gitlab/gitlab-runner:latest
labels:
- wud.watch.digest=true
- wud.watch=true
web: web:
container_name: gitlab container_name: gitlab
environment: environment:
GITLAB_OMNIBUS_CONFIG: "external_url 'https://gitlab.sectorq.eu'\nnginx['listen_port']\ GITLAB_OMNIBUS_CONFIG: "external_url 'https://gitlab.sectorq.eu'\nnginx['listen_port']\
@@ -47,8 +58,13 @@ services:
restart: unless-stopped restart: unless-stopped
shm_size: 4gb shm_size: 4gb
volumes: volumes:
- /share/docker_data/gitlab/config:/etc/gitlab - config:/etc/gitlab
- /share/docker_data/gitlab/logs:/var/log/gitlab - logs:/var/log/gitlab
- /share/docker_data/gitlab/data:/var/opt/gitlab - data:/var/opt/gitlab
- /etc/localtime:/etc/localtime:ro - /etc/localtime:/etc/localtime:ro
version: '3.6' version: '3.6'
volumes:
runner:
config:
logs:
data:

View File

@@ -1,73 +1,101 @@
services: services:
web: runner:
environment: container_name: gitlab-runner
GITLAB_OMNIBUS_CONFIG: "external_url 'https://gitlab.sectorq.eu'\nnginx['listen_port']\ restart: always
\ = 80\nnginx['listen_https'] = false\nweb_server['username'] = 'git'\ngitlab_rails['time_zone']\ volumes:
\ = 'Europe/Bratislava'\ngitlab_rails['omniauth_enabled'] = true\ngitlab_rails['omniauth_allow_single_sign_on']\ - runner:/etc/gitlab-runner
\ = ['saml']\ngitlab_rails['omniauth_sync_email_from_provider'] = 'saml'\n\ - /var/run/docker.sock:/var/run/docker.sock
gitlab_rails['omniauth_sync_profile_from_provider'] = ['saml']\ngitlab_rails['omniauth_sync_profile_attributes']\ image: ${DOCKER_REGISTRY:-}gitlab/gitlab-runner:latest
\ = ['email']\ngitlab_rails['omniauth_auto_sign_in_with_provider'] = 'saml'\n\
gitlab_rails['omniauth_block_auto_created_users'] = false\ngitlab_rails['omniauth_auto_link_saml_user']\
\ = true\ngitlab_rails['omniauth_providers'] = [\n {\n name: 'saml',\n\
\ args: {\n assertion_consumer_service_url: 'https://gitlab.sectorq.eu/users/auth/saml/callback',\n\
\ # Shown when navigating to certificates in authentik1\n idp_cert_fingerprint:\
\ 'f7:fd:49:03:b3:38:52:b3:23:f5:43:c4:8d:08:65:32:e0:5a:7b:0e',\n idp_sso_target_url:\
\ 'https://auth.sectorq.eu/application/saml/gitlab/sso/binding/redirect/',\n\
\ issuer: 'https://gitlab.sectorq.eu',\n name_identifier_format:\
\ 'urn:oasis:names:tc:SAML:2.0:nameid-format:persistent',\n attribute_statements:\
\ {\n email: ['http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress'],\n\
\ first_name: ['http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name'],\n\
\ nickname: ['http://schemas.goauthentik.io/2021/02/saml/username']\n\
\ }\n },\n label: 'authentik'\n }\n]\n"
TZ: Europe/Bratislava
hostname: gitlab.sectorq.eu
image: ${DOCKER_REGISTRY:-}gitlab/gitlab-ce:latest
network_mode: bridge
ports:
- target: 80
published: 8785
protocol: tcp
mode: ingress
- target: 443
published: 8743
protocol: tcp
mode: ingress
- target: 22
published: 8722
protocol: tcp
mode: ingress
shm_size: 4gb
volumes:
- config:/etc/gitlab
- logs:/var/log/gitlab
- data:/var/opt/gitlab
- /etc/localtime:/etc/localtime:ro
deploy:
labels: labels:
com.centurylinklabs.watchtower.enable: 'true' - wud.watch.digest=true
homepage.container: gitlab - wud.watch=true
homepage.description: Version control dns:
homepage.group: Infrastructure - 192.168.77.1
homepage.href: https://gitlab.sectorq.eu - 192.168.77.101
homepage.icon: gitlab.png app:
homepage.name: Gitlab environment:
homepage.server: my-docker-swarm GITLAB_OMNIBUS_CONFIG: |
homepage.weight: '1' external_url 'https://gitlab.sectorq.eu'
homepage.widget.key: glpat-BuMKcaDqeD-Wx3dW4TM9 nginx['listen_port'] = 80
homepage.widget.type: gitlab nginx['listen_https'] = false
homepage.widget.url: https://gitlab.sectorq.eu web_server['username'] = 'git'
homepage.widget.user_id: '2' gitlab_rails['time_zone'] = 'Europe/Bratislava'
wud.watch: 'true' gitlab_rails['omniauth_enabled'] = true
wud.watch.digest: 'true' gitlab_rails['omniauth_allow_single_sign_on'] = ['saml']
replicas: 1 gitlab_rails['omniauth_sync_email_from_provider'] = 'saml'
placement: gitlab_rails['omniauth_sync_profile_from_provider'] = ['saml']
constraints: gitlab_rails['omniauth_sync_profile_attributes'] = ['email']
- node.role == manager gitlab_rails['omniauth_auto_sign_in_with_provider'] = 'saml'
gitlab_rails['omniauth_block_auto_created_users'] = false
gitlab_rails['omniauth_auto_link_saml_user'] = true
gitlab_rails['omniauth_providers'] = [
{
name: 'saml',
args: {
assertion_consumer_service_url: 'https://gitlab.sectorq.eu/users/auth/saml/callback',
# Shown when navigating to certificates in authentik1
idp_cert_fingerprint: 'f7:fd:49:03:b3:38:52:b3:23:f5:43:c4:8d:08:65:32:e0:5a:7b:0e',
idp_sso_target_url: 'https://auth.sectorq.eu/application/saml/gitlab/sso/binding/redirect/',
issuer: 'https://gitlab.sectorq.eu',
name_identifier_format: 'urn:oasis:names:tc:SAML:2.0:nameid-format:persistent',
attribute_statements: {
email: ['http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress'],
first_name: ['http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name'],
nickname: ['http://schemas.goauthentik.io/2021/02/saml/username']
}
},
label: 'authentik'
}
]
TZ: Europe/Bratislava
hostname: gitlab.sectorq.eu
image: ${DOCKER_REGISTRY:-}gitlab/gitlab-ce:latest
network_mode: bridge
ports:
- target: 80
published: 8785
protocol: tcp
mode: ingress
- target: 443
published: 8743
protocol: tcp
mode: ingress
- target: 22
published: 8722
protocol: tcp
mode: ingress
shm_size: 4gb
volumes:
- config:/etc/gitlab
- logs:/var/log/gitlab
- data:/var/opt/gitlab
- /etc/localtime:/etc/localtime:ro
deploy:
labels:
com.centurylinklabs.watchtower.enable: 'true'
homepage.container: gitlab
homepage.description: Version control
homepage.group: Infrastructure
homepage.href: https://gitlab.sectorq.eu
homepage.icon: gitlab.png
homepage.name: Gitlab
homepage.server: my-docker-swarm
homepage.weight: '1'
homepage.widget.key: glpat-BuMKcaDqeD-Wx3dW4TM9
homepage.widget.type: gitlab
homepage.widget.url: https://gitlab.sectorq.eu
homepage.widget.user_id: '2'
wud.watch: 'true'
wud.watch.digest: 'true'
replicas: 1
placement:
constraints:
- node.role == manager
volumes: volumes:
config: config:
driver: local driver: local
logs: logs:
driver: local driver: local
data: data:
driver: local driver: local

View File

@@ -0,0 +1,47 @@
services:
vault:
image: hashicorp/vault:latest
command: server -config=/vault/config/vault.hcl
volumes:
- data:/vault/data
configs:
- source: vault_hcl
target: /vault/config/vault.hcl
ports:
- "8200:8200"
environment:
VAULT_LOCAL_CONFIG: |
{
"backend": {
"file": {
"path": "/vault/file"
}
},
"listener": {
"tcp": {
"address": "0.0.0.0:8200",
"tls_disable": 1
}
},
"disable_mlock": true
}
VAULT_API_ADDR: "http://192.168.77.101:8200"
cap_add:
- IPC_LOCK
networks:
- vault-net
deploy:
mode: replicated
replicas: 1
placement:
constraints:
- node.role == manager
configs:
vault_hcl:
external: true
volumes:
data:
networks:
vault-net:
driver: overlay

View File

@@ -1,11 +1,16 @@
services: services:
homeassistant: homeassistant:
network_mode: host
image: ${DOCKER_REGISTRY:-}ghcr.io/home-assistant/home-assistant:latest image: ${DOCKER_REGISTRY:-}ghcr.io/home-assistant/home-assistant:latest
volumes: volumes:
- ha_config:/config - ha_config:/config
- /var/run/docker.sock:/var/run/docker.sock - /var/run/docker.sock:/var/run/docker.sock
- /run/dbus:/run/dbus:ro - /run/dbus:/run/dbus:ro
networks:
- swarm-ipvlan
- traefik-public
- homeassistant-internal
privileged: true privileged: true
environment: environment:
DISABLE_JEMALLOC: value DISABLE_JEMALLOC: value

View File

@@ -1,6 +1,7 @@
services: services:
homepage: homepage:
dns: dns:
- 192.168.77.1
- 192.168.77.101 - 192.168.77.101
environment: environment:
HOMEPAGE_ALLOWED_HOSTS: sectorq.eu,active.home.lan:3003,m-server.home.lan:3003,rpi5.home.lan:3003,nas.home.lan:3003,192.168.77.238:3003,rack.home.lan:3003,192.168.80.222:3003 HOMEPAGE_ALLOWED_HOSTS: sectorq.eu,active.home.lan:3003,m-server.home.lan:3003,rpi5.home.lan:3003,nas.home.lan:3003,192.168.77.238:3003,rack.home.lan:3003,192.168.80.222:3003

View File

@@ -29,9 +29,6 @@ services:
wud.watch: 'true' wud.watch: 'true'
wud.watch.digest: 'true' wud.watch.digest: 'true'
replicas: 1 replicas: 1
placement:
constraints:
- node.role == manager
secrets: secrets:
influxdb2-admin-token: influxdb2-admin-token:
external: true external: true

View File

@@ -16,8 +16,18 @@ volumes:
radarr_config: radarr_config:
sonarr_config: sonarr_config:
bazarr_config: bazarr_config:
flaresolverr_config: m-server_music:
driver: local
driver_opts:
type: nfs
o: addr=192.168.77.101,rw,nfsvers=4.2,nolock
device: :/music
m-server_movies:
driver: local
driver_opts:
type: nfs
o: addr=192.168.77.101,rw,nfsvers=4.2,nolock
device: :/movies
services: services:
bazarr: bazarr:
environment: environment:
@@ -28,6 +38,8 @@ services:
image: ${DOCKER_REGISTRY:-}lscr.io/linuxserver/bazarr:latest image: ${DOCKER_REGISTRY:-}lscr.io/linuxserver/bazarr:latest
networks: networks:
- mediarr - mediarr
dns:
- 192.168.77.101
ports: ports:
- target: 6767 - target: 6767
published: 6767 published: 6767
@@ -42,7 +54,7 @@ services:
deploy: deploy:
labels: labels:
com.centurylinklabs.watchtower.enable: 'true' com.centurylinklabs.watchtower.enable: 'true'
homepage.container: bazarr homepage.container: mediacenter_bazarr
homepage.description: Subtitles homepage.description: Subtitles
homepage.group: Media homepage.group: Media
homepage.href: https://bazarr.sectorq.eu homepage.href: https://bazarr.sectorq.eu
@@ -59,6 +71,7 @@ services:
placement: placement:
constraints: constraints:
- node.role == manager - node.role == manager
flaresolverr: flaresolverr:
environment: environment:
LOG_LEVEL: info LOG_LEVEL: info
@@ -81,6 +94,7 @@ services:
placement: placement:
constraints: constraints:
- node.role == manager - node.role == manager
homarr: homarr:
hostname: homarr hostname: homarr
image: ${DOCKER_REGISTRY:-}ghcr.io/ajnart/homarr:latest image: ${DOCKER_REGISTRY:-}ghcr.io/ajnart/homarr:latest
@@ -105,6 +119,7 @@ services:
placement: placement:
constraints: constraints:
- node.role == manager - node.role == manager
jackett: jackett:
dns: dns:
- 192.168.77.101 - 192.168.77.101
@@ -129,7 +144,7 @@ services:
deploy: deploy:
labels: labels:
com.centurylinklabs.watchtower.enable: 'true' com.centurylinklabs.watchtower.enable: 'true'
homepage.container: jackett homepage.container: mediacenter_jackett
homepage.description: Subtitles homepage.description: Subtitles
homepage.group: Media homepage.group: Media
homepage.href: https://jackett.sectorq.eu homepage.href: https://jackett.sectorq.eu
@@ -146,15 +161,16 @@ services:
placement: placement:
constraints: constraints:
- node.role == manager - node.role == manager
jellyfin: jellyfin:
environment: environment:
PUID: '1000'
PGID: '1000'
TZ: Europe/Bratislava TZ: Europe/Bratislava
JELLYFIN_PublishedServerUrl: https://jf.sectorq.eu JELLYFIN_PublishedServerUrl: https://jf.sectorq.eu
VAAPI_DEVICE: /dev/dri/renderD128
LIBVA_DRIVER_NAME: radeonsi
hostname: jellyfin hostname: jellyfin
image: ${DOCKER_REGISTRY:-}lscr.io/linuxserver/jellyfin:latest image: ${DOCKER_REGISTRY:-}lscr.io/linuxserver/jellyfin:latest
network_mode: host
ports: ports:
- target: 8096 - target: 8096
published: 8096 published: 8096
@@ -168,19 +184,23 @@ services:
published: 7359 published: 7359
protocol: tcp protocol: tcp
mode: ingress mode: ingress
user: root
volumes: volumes:
- jellyfin_config:/config - jellyfin_config:/config
- /media/m-server/movies:/data/movies/m-server - m-server_movies:/data/movies/m-server
- /media/m-server/music:/data/music/m-server - m-server_music:/data/music/m-server
- /media/m-server/shows:/data/shows/m-server - /media/m-server/shows:/data/shows/m-server
- /media/nas/movies:/data/movies/nas - /media/nas/movies:/data/movies/nas
- /media/nas/music:/data/music/nas - /media/nas/music:/data/music/nas
- /media/nas/shows:/data/shows/nas - /media/nas/shows:/data/shows/nas
- /media/nas/xxx:/data/xxx/nas - /media/nas/xxx:/data/xxx/nas
- /dev/dri:/dev/dri
devices:
- /dev/dri/renderD128:/dev/dri/renderD128
deploy: deploy:
labels: labels:
com.centurylinklabs.watchtower.enable: 'true' com.centurylinklabs.watchtower.enable: 'true'
homepage.container: jellyfin homepage.container: mediacenter_jellyfin
homepage.description: Subtitles homepage.description: Subtitles
homepage.group: Media homepage.group: Media
homepage.href: https://jf.sectorq.eu homepage.href: https://jf.sectorq.eu
@@ -197,6 +217,8 @@ services:
placement: placement:
constraints: constraints:
- node.role == manager - node.role == manager
- node.labels.gpu == amd
jellyseerr: jellyseerr:
environment: environment:
LOG_LEVEL: debug LOG_LEVEL: debug
@@ -215,7 +237,7 @@ services:
deploy: deploy:
labels: labels:
com.centurylinklabs.watchtower.enabl: 'true' com.centurylinklabs.watchtower.enabl: 'true'
homepage.container: jellyseerr homepage.container: mediacenter_jellyseerr
homepage.description: Subtitles homepage.description: Subtitles
homepage.group: Media homepage.group: Media
homepage.href: https://js.sectorq.eu homepage.href: https://js.sectorq.eu
@@ -232,6 +254,7 @@ services:
placement: placement:
constraints: constraints:
- node.role == manager - node.role == manager
lidarr: lidarr:
environment: environment:
PUID: '1000' PUID: '1000'
@@ -253,7 +276,7 @@ services:
deploy: deploy:
labels: labels:
com.centurylinklabs.watchtower.enable: 'true' com.centurylinklabs.watchtower.enable: 'true'
homepage.container: lidarr homepage.container: mediacenter_lidarr
homepage.description: Subtitles homepage.description: Subtitles
homepage.group: Media homepage.group: Media
homepage.href: https://lidarr.sectorq.eu homepage.href: https://lidarr.sectorq.eu
@@ -270,6 +293,7 @@ services:
placement: placement:
constraints: constraints:
- node.role == manager - node.role == manager
qbittorrent: qbittorrent:
environment: environment:
PUID: '1000' PUID: '1000'
@@ -296,7 +320,7 @@ services:
deploy: deploy:
labels: labels:
com.centurylinklabs.watchtower.enable: 'true' com.centurylinklabs.watchtower.enable: 'true'
homepage.container: qbittorrent homepage.container: mediacenter_qbittorrent
homepage.description: Subtitles homepage.description: Subtitles
homepage.group: Utilities homepage.group: Utilities
homepage.href: https://qbit.sectorq.eu homepage.href: https://qbit.sectorq.eu
@@ -304,7 +328,7 @@ services:
homepage.name: Qbittorrent homepage.name: Qbittorrent
homepage.server: my-docker-swarm homepage.server: my-docker-swarm
homepage.weight: '95' homepage.weight: '95'
homepage.widget.enableLeechProgress: 'true' homepage.widget.enableLeechProgress: 'false'
homepage.widget.password: ${QBIT_TOKEN} homepage.widget.password: ${QBIT_TOKEN}
homepage.widget.type: qbittorrent homepage.widget.type: qbittorrent
homepage.widget.url: https://qbit.sectorq.eu homepage.widget.url: https://qbit.sectorq.eu
@@ -315,6 +339,7 @@ services:
placement: placement:
constraints: constraints:
- node.role == manager - node.role == manager
radarr: radarr:
dns: dns:
- 192.168.77.101 - 192.168.77.101
@@ -339,7 +364,7 @@ services:
deploy: deploy:
labels: labels:
com.centurylinklabs.watchtower.enable: 'true' com.centurylinklabs.watchtower.enable: 'true'
homepage.container: radarr homepage.container: mediacenter_radarr
homepage.description: Subtitles homepage.description: Subtitles
homepage.group: Media homepage.group: Media
homepage.href: https://radarr.sectorq.eu homepage.href: https://radarr.sectorq.eu
@@ -357,6 +382,7 @@ services:
placement: placement:
constraints: constraints:
- node.role == manager - node.role == manager
sonarr: sonarr:
dns: dns:
- 192.168.77.101 - 192.168.77.101
@@ -381,7 +407,7 @@ services:
deploy: deploy:
labels: labels:
com.centurylinklabs.watchtower.enable: 'true' com.centurylinklabs.watchtower.enable: 'true'
homepage.container: sonarr homepage.container: mediacenter_sonarr
homepage.description: Subtitles homepage.description: Subtitles
homepage.group: Media homepage.group: Media
homepage.href: https://sonarr.sectorq.eu homepage.href: https://sonarr.sectorq.eu

View File

@@ -1,5 +1,5 @@
volumes: volumes:
data:: data:
driver: local driver: local
dnsmasq_d: dnsmasq_d:
driver: local driver: local
@@ -43,6 +43,10 @@ services:
volumes: volumes:
- data:/etc/pihole - data:/etc/pihole
- dnsmasq_d:/etc/dnsmasq.d - dnsmasq_d:/etc/dnsmasq.d
- type: tmpfs
target: /dev/shm
tmpfs:
size: 248000000
deploy: deploy:
labels: labels:
com.centurylinklabs.watchtower.enable: 'true' com.centurylinklabs.watchtower.enable: 'true'

View File

@@ -1,5 +1,5 @@
services: services:
registry: app:
environment: environment:
REGISTRY_STORAGE_DELETE_ENABLED: 'true' REGISTRY_STORAGE_DELETE_ENABLED: 'true'
REGISTRY_AUTH: htpasswd REGISTRY_AUTH: htpasswd
@@ -10,6 +10,12 @@ services:
driver: loki driver: loki
options: options:
loki-url: http://192.168.77.101:3100/loki/api/v1/push loki-url: http://192.168.77.101:3100/loki/api/v1/push
loki-relabel-config: |
- action: labelmap
regex: swarm_stack
replacement: namespace
- action: labelmap
regex: swarm_(service)
ports: ports:
- target: 5000 - target: 5000
published: 5000 published: 5000
@@ -17,15 +23,18 @@ services:
mode: ingress mode: ingress
volumes: volumes:
- auth:/auth - auth:/auth
- data:/var/lib/registry - /share/docker_registry/data:/var/lib/registry
- config:/etc/docker/registry/
deploy: deploy:
labels: labels:
wud.watch: 'false' wud.watch: 'false'
wud.watch.digest: 'false' wud.watch.digest: 'false'
service_name: 'registry'
replicas: 1 replicas: 1
placement: restart_policy:
constraints: condition: any
- node.role == manager
volumes: volumes:
auth: auth:
data: config:

View File

@@ -1,8 +1,8 @@
volumes: volumes:
regsync: config:
driver: local driver: local
services: services:
regsync: app:
command: -c /home/appuser/regsync.yml server command: -c /home/appuser/regsync.yml server
env_file: env_file:
- stack.env - stack.env
@@ -11,15 +11,23 @@ services:
driver: loki driver: loki
options: options:
loki-url: http://192.168.77.101:3100/loki/api/v1/push loki-url: http://192.168.77.101:3100/loki/api/v1/push
network_mode: host loki-relabel-config: |
- action: labelmap
regex: swarm_stack
replacement: namespace
- action: labelmap
regex: swarm_(service)
stdin_open: true stdin_open: true
volumes: volumes:
- regsync:/home/appuser/ - config:/home/appuser/
- /etc/localtime:/etc/localtime - /etc/localtime:/etc/localtime
# labels:
# service_name: 'regsync'
deploy: deploy:
labels: labels:
wud.watch: 'true' wud.watch: 'true'
wud.watch.digest: 'true' wud.watch.digest: 'true'
service_name: 'regsync'
replicas: 1 replicas: 1
placement: placement:
constraints: constraints:

View File

@@ -4,3 +4,5 @@ HUB_USER=sectorq
HUB_PASS=dckr_pat_7XN8zNgj8JRPq1mlS5IvMcxJDUA HUB_PASS=dckr_pat_7XN8zNgj8JRPq1mlS5IvMcxJDUA
LOCAL_USER=jaydee LOCAL_USER=jaydee
LOCAL_PASS=l4c1j4yd33Du5lo LOCAL_PASS=l4c1j4yd33Du5lo
APPNAME=regsync
DOCKER_REGISTRY=r.sectorq.eu/library/

View File

@@ -10,7 +10,7 @@ services:
SEMAPHORE_ADMIN: administrator SEMAPHORE_ADMIN: administrator
SEMAPHORE_ADMIN_EMAIL: administrator@sectorq.eu SEMAPHORE_ADMIN_EMAIL: administrator@sectorq.eu
SEMAPHORE_ADMIN_NAME: administrator SEMAPHORE_ADMIN_NAME: administrator
SEMAPHORE_ADMIN_PASSWORD: $SEMAPHORE_ADMIN_PASSWORD SEMAPHORE_ADMIN_PASSWORD: administrator
SEMAPHORE_DB: semaphore_db SEMAPHORE_DB: semaphore_db
SEMAPHORE_DB_HOST: db SEMAPHORE_DB_HOST: db
SEMAPHORE_DB_PASS: StrongPassw0rd SEMAPHORE_DB_PASS: StrongPassw0rd
@@ -21,7 +21,7 @@ services:
SEMAPHORE_LDAP_DN_SEARCH: dc=sectorq,dc=eu SEMAPHORE_LDAP_DN_SEARCH: dc=sectorq,dc=eu
SEMAPHORE_LDAP_HOST: 192.168.77.101 SEMAPHORE_LDAP_HOST: 192.168.77.101
SEMAPHORE_LDAP_NEEDTLS: 'no' SEMAPHORE_LDAP_NEEDTLS: 'no'
SEMAPHORE_LDAP_PASSWORD: $LDAP_ADMIN_PASSWORD SEMAPHORE_LDAP_PASSWORD: administrator
SEMAPHORE_LDAP_PORT: '2389' SEMAPHORE_LDAP_PORT: '2389'
SEMAPHORE_LDAP_SEARCH_FILTER: (&(objectClass=inetOrgPerson)(uid=%s)) SEMAPHORE_LDAP_SEARCH_FILTER: (&(objectClass=inetOrgPerson)(uid=%s))
SEMAPHORE_PLAYBOOK_PATH: /tmp/semaphore/ SEMAPHORE_PLAYBOOK_PATH: /tmp/semaphore/

View File

@@ -3,12 +3,14 @@ services:
dns: dns:
- 192.168.77.101 - 192.168.77.101
- 192.168.77.1 - 192.168.77.1
secrets:
- semaphore_admin_password
environment: environment:
SEMAPHORE_ACCESS_KEY_ENCRYPTION: MflCLIUF5bn6Lgkuwy4BoAdIFhoZ4Ief2oocXmuZSjs= SEMAPHORE_ACCESS_KEY_ENCRYPTION: MflCLIUF5bn6Lgkuwy4BoAdIFhoZ4Ief2oocXmuZSjs=
SEMAPHORE_ADMIN: administrator SEMAPHORE_ADMIN: admin
SEMAPHORE_ADMIN_EMAIL: administrator@sectorq.eu SEMAPHORE_ADMIN_EMAIL: jaydee@sectorq.eu
SEMAPHORE_ADMIN_NAME: administrator SEMAPHORE_ADMIN_NAME: admin
SEMAPHORE_ADMIN_PASSWORD: $SEMAPHORE_ADMIN_PASSWORD SEMAPHORE_ADMIN_PASSWORD_FILE: /run/secrets/semaphore_admin_password
SEMAPHORE_DB: semaphore_db SEMAPHORE_DB: semaphore_db
SEMAPHORE_DB_HOST: db SEMAPHORE_DB_HOST: db
SEMAPHORE_DB_PASS: StrongPassw0rd SEMAPHORE_DB_PASS: StrongPassw0rd
@@ -19,7 +21,7 @@ services:
SEMAPHORE_LDAP_DN_SEARCH: dc=sectorq,dc=eu SEMAPHORE_LDAP_DN_SEARCH: dc=sectorq,dc=eu
SEMAPHORE_LDAP_HOST: 192.168.77.101 SEMAPHORE_LDAP_HOST: 192.168.77.101
SEMAPHORE_LDAP_NEEDTLS: 'no' SEMAPHORE_LDAP_NEEDTLS: 'no'
SEMAPHORE_LDAP_PASSWORD: $LDAP_ADMIN_PASSWORD SEMAPHORE_LDAP_PASSWORD: administrator
SEMAPHORE_LDAP_PORT: '2389' SEMAPHORE_LDAP_PORT: '2389'
SEMAPHORE_LDAP_SEARCH_FILTER: (&(objectClass=inetOrgPerson)(uid=%s)) SEMAPHORE_LDAP_SEARCH_FILTER: (&(objectClass=inetOrgPerson)(uid=%s))
SEMAPHORE_PLAYBOOK_PATH: /tmp/semaphore/ SEMAPHORE_PLAYBOOK_PATH: /tmp/semaphore/
@@ -39,9 +41,6 @@ services:
wud.watch: 'true' wud.watch: 'true'
wud.watch.digest: 'true' wud.watch.digest: 'true'
replicas: 1 replicas: 1
placement:
constraints:
- node.role == manager
db: db:
environment: environment:
MYSQL_DATABASE: semaphore_db MYSQL_DATABASE: semaphore_db
@@ -56,9 +55,9 @@ services:
wud.watch: 'true' wud.watch: 'true'
wud.watch.digest: 'true' wud.watch.digest: 'true'
replicas: 1 replicas: 1
placement:
constraints:
- node.role == manager
volumes: volumes:
data: data:
db: db:
secrets:
semaphore_admin_password:
external: true

View File

@@ -15,8 +15,7 @@ services:
wud.watch: 'true' wud.watch: 'true'
wud.watch.digest: 'true' wud.watch.digest: 'true'
replicas: 1 replicas: 1
placement: restart_policy:
constraints: condition: any
- node.role == manager
volumes: volumes:
data: data:

View File

@@ -16,7 +16,7 @@ WUD_AUTH_OIDC_AUTHENTIK_TIMEOUT=2000
# BASIC # BASIC
WUD_AUTH_BASIC_JAYDEE_USER=homepage WUD_AUTH_BASIC_JAYDEE_USER=homepage
WUD_AUTH_BASIC_JAYDEE_HASH=$$apr1$$pGMz1QxU$$y6XuTscvGcYgas15JWlfg/ WUD_AUTH_BASIC_JAYDEE_HASH=$apr1$OZNN/65l$cQp3tMfyQdftPIgje.uDZ1
# GOTIFY # GOTIFY
WUD_TRIGGER_GOTIFY_EXTERNAL_PRIORITY=0 WUD_TRIGGER_GOTIFY_EXTERNAL_PRIORITY=0
WUD_TRIGGER_GOTIFY_EXTERNAL_TOKEN="AFxvpm1JpPSsmkf" WUD_TRIGGER_GOTIFY_EXTERNAL_TOKEN="AFxvpm1JpPSsmkf"
@@ -47,14 +47,14 @@ WUD_LOG_LEVEL=debug
# text json # text json
WUD_LOG_FORMAT=text WUD_LOG_FORMAT=text
WUD_WATCHER_EXTDOCKER_HOST=193.168.144.164 # WUD_WATCHER_EXTDOCKER_HOST=193.168.144.164
WUD_WATCHER_EXTDOCKER_PORT=2376 # WUD_WATCHER_EXTDOCKER_PORT=2376
WUD_WATCHER_EXTDOCKER_CERTFILE=/certs/ext/cert.pem # WUD_WATCHER_EXTDOCKER_CERTFILE=/certs/ext/cert.pem
WUD_WATCHER_EXTDOCKER_CAFILE=/certs/ext/ca.pem # WUD_WATCHER_EXTDOCKER_CAFILE=/certs/ext/ca.pem
WUD_WATCHER_EXTDOCKER_KEYFILE=/certs/ext/key.pem # WUD_WATCHER_EXTDOCKER_KEYFILE=/certs/ext/key.pem
WUD_WATCHER_EXTDOCKER_CRON=0 * * * * # WUD_WATCHER_EXTDOCKER_CRON=0 * * * *
WUD_WATCHER_EXTDOCKER_WATCHALL=true # WUD_WATCHER_EXTDOCKER_WATCHALL=true
WUD_WATCHER_EXTDOCKER_WATCHBYDEFAULT=true # WUD_WATCHER_EXTDOCKER_WATCHBYDEFAULT=true
WUD_WATCHER_MSERVER_HOST=192.168.77.101 WUD_WATCHER_MSERVER_HOST=192.168.77.101
WUD_WATCHER_MSERVER_PORT=2376 WUD_WATCHER_MSERVER_PORT=2376
@@ -65,14 +65,23 @@ WUD_WATCHER_MSERVER_CRON=0 * * * *
WUD_WATCHER_MSERVER_WATCHALL=true WUD_WATCHER_MSERVER_WATCHALL=true
WUD_WATCHER_MSERVER_WATCHBYDEFAULT=false WUD_WATCHER_MSERVER_WATCHBYDEFAULT=false
WUD_WATCHER_RPI5_HOST=192.168.77.238 WUD_WATCHER_MS_HOST=192.168.77.101
WUD_WATCHER_RPI5_PORT=2376 WUD_WATCHER_MS_PORT=2376
WUD_WATCHER_RPI5_CERTFILE=/certs/rpi5/cert.pem WUD_WATCHER_MS_CERTFILE=/certs/m-server/cert.pem
WUD_WATCHER_RPI5_CAFILE=/certs/rpi5/ca.pem WUD_WATCHER_MS_CAFILE=/certs/m-server/ca.pem
WUD_WATCHER_RPI5_KEYFILE=/certs/rpi5/key.pem WUD_WATCHER_MS_KEYFILE=/certs/m-server/key.pem
WUD_WATCHER_RPI5_CRON=0 * * * * WUD_WATCHER_MS_CRON=0 * * * *
WUD_WATCHER_RPI5_WATCHALL=true WUD_WATCHER_MS_WATCHALL=true
WUD_WATCHER_RPI5_WATCHBYDEFAULT=true WUD_WATCHER_MS_WATCHBYDEFAULT=true
# WUD_WATCHER_RPI5_HOST=192.168.77.238
# WUD_WATCHER_RPI5_PORT=2376
# WUD_WATCHER_RPI5_CERTFILE=/certs/rpi5/cert.pem
# WUD_WATCHER_RPI5_CAFILE=/certs/rpi5/ca.pem
# WUD_WATCHER_RPI5_KEYFILE=/certs/rpi5/key.pem
# WUD_WATCHER_RPI5_CRON=0 * * * *
# WUD_WATCHER_RPI5_WATCHALL=true
# WUD_WATCHER_RPI5_WATCHBYDEFAULT=true
WUD_WATCHER_NAS_HOST=192.168.77.106 WUD_WATCHER_NAS_HOST=192.168.77.106
WUD_WATCHER_NAS_PORT=2376 WUD_WATCHER_NAS_PORT=2376
@@ -83,13 +92,13 @@ WUD_WATCHER_NAS_CRON=0 * * * *
WUD_WATCHER_NAS_WATCHALL=true WUD_WATCHER_NAS_WATCHALL=true
WUD_WATCHER_NAS_WATCHBYDEFAULT=true WUD_WATCHER_NAS_WATCHBYDEFAULT=true
WUD_WATCHER_RACK_HOST=192.168.77.55 # WUD_WATCHER_RACK_HOST=192.168.77.55
WUD_WATCHER_RACK_PORT=2376 # WUD_WATCHER_RACK_PORT=2376
WUD_WATCHER_RACK_CERTFILE=/certs/rack/cert.pem # WUD_WATCHER_RACK_CERTFILE=/certs/rack/cert.pem
WUD_WATCHER_RACK_CAFILE=/certs/rack/ca.pem # WUD_WATCHER_RACK_CAFILE=/certs/rack/ca.pem
WUD_WATCHER_RACK_KEYFILE=/certs/rack/key.pem # WUD_WATCHER_RACK_KEYFILE=/certs/rack/key.pem
WUD_WATCHER_RACK_CRON=0 * * * * # WUD_WATCHER_RACK_CRON=0 * * * *
WUD_WATCHER_RACK_WATCHALL=true # WUD_WATCHER_RACK_WATCHALL=true
WUD_WATCHER_RACK_WATCHBYDEFAULT=true # WUD_WATCHER_RACK_WATCHBYDEFAULT=true
WUD_SERVER_CORS_ENABLED=true WUD_SERVER_CORS_ENABLED=true

View File

@@ -1,5 +1,5 @@
services: services:
whatsupdocker: app:
env_file: env_file:
- stack.env - stack.env
image: ${DOCKER_REGISTRY:-}getwud/wud image: ${DOCKER_REGISTRY:-}getwud/wud
@@ -19,7 +19,7 @@ services:
deploy: deploy:
labels: labels:
com.centurylinklabs.watchtower.enable: 'true' com.centurylinklabs.watchtower.enable: 'true'
homepage.container: wud homepage.container: wud_app
homepage.description: Docker container management homepage.description: Docker container management
homepage.group: Infrastructure homepage.group: Infrastructure
homepage.href: https://wud.sectorq.eu homepage.href: https://wud.sectorq.eu
@@ -34,9 +34,8 @@ services:
wud.watch: 'true' wud.watch: 'true'
wud.watch.digest: 'true' wud.watch.digest: 'true'
replicas: 1 replicas: 1
placement: restart_policy:
constraints: condition: any
- node.role == manager
volumes: volumes:
data: data:
certs: certs:

View File

@@ -1,2 +1,3 @@
APPNAME=zabbix APPNAME=zabbix
#RESTART=always #RESTART=always
DOCKER_REGISTRY=r.sectorq.eu/library/

View File

@@ -0,0 +1,5 @@
FROM zabbix/zabbix-server-pgsql:alpine-latest
USER root
RUN apk add --no-cache curl
USER zabbix

View File

@@ -48,7 +48,11 @@ services:
extends: extends:
file: logging.yml file: logging.yml
service: ${LOGGING:-syslog} service: ${LOGGING:-syslog}
image: ${DOCKER_REGISTRY:-}zabbix/zabbix-server-pgsql:alpine-latest #image: ${DOCKER_REGISTRY:-}zabbix/zabbix-server-pgsql:alpine-latest
build:
context: .
dockerfile: Dockerfile
image: zabbix-server-custom:latest
volumes: volumes:
- /share/docker_data/zabbix-server/server/alertscripts:/usr/lib/zabbix/alertscripts - /share/docker_data/zabbix-server/server/alertscripts:/usr/lib/zabbix/alertscripts
labels: labels:

View File

@@ -1,6 +1,6 @@
# Zabbix global # Zabbix global
# ZBX_DEBUGLEVEL=3 # ZBX_DEBUGLEVEL=3
DOCKER_REGISTRY=r.sectorq.eu/library/
# Database # Database
MYSQL_PASSWORD=zabbix MYSQL_PASSWORD=zabbix
MYSQL_USER=zabbix MYSQL_USER=zabbix

View File

@@ -1,11 +1,10 @@
networks: networks:
zabbix: zabbix:
driver: overlay driver: overlay
attachable: true
ipam: ipam:
config: config:
- subnet: 192.168.82.0/24 - subnet: 192.168.89.0/28
driver: default
services: services:
db-server: db-server:
env_file: env_file:
@@ -13,13 +12,14 @@ services:
image: ${DOCKER_REGISTRY:-}postgres:16-alpine image: ${DOCKER_REGISTRY:-}postgres:16-alpine
networks: networks:
zabbix: zabbix:
ipv4_address: 192.168.89.4
ports: ports:
- target: 5432 - target: 5432
published: 5432 published: 5432
protocol: tcp protocol: tcp
mode: ingress mode: ingress
volumes: volumes:
- postgres-data:/var/lib/postgresql/data - db:/var/lib/postgresql/data
deploy: deploy:
labels: labels:
com.centurylinklabs.watchtower.enable: 'true' com.centurylinklabs.watchtower.enable: 'true'
@@ -33,6 +33,7 @@ services:
image: ${DOCKER_REGISTRY:-}zabbix/zabbix-web-nginx-pgsql:alpine-latest image: ${DOCKER_REGISTRY:-}zabbix/zabbix-web-nginx-pgsql:alpine-latest
networks: networks:
zabbix: zabbix:
ipv4_address: 192.168.89.3
ports: ports:
- target: 8080 - target: 8080
published: 8051 published: 8051
@@ -56,11 +57,13 @@ services:
zabbix-server: zabbix-server:
env_file: env_file:
- stack.env - stack.env
image: ${DOCKER_REGISTRY:-}zabbix/zabbix-server-pgsql:alpine-latest #image: ${DOCKER_REGISTRY:-}zabbix/zabbix-server-pgsql:alpine-latest
image: r.sectorq.eu/jaydee/zabbix-server-pgsql:latest
volumes: volumes:
- alertscripts:/usr/lib/zabbix/alertscripts - alertscripts:/usr/lib/zabbix/alertscripts
networks: networks:
zabbix: zabbix:
ipv4_address: 192.168.89.2
ports: ports:
- target: 10051 - target: 10051
published: 10051 published: 10051
@@ -69,7 +72,7 @@ services:
deploy: deploy:
labels: labels:
com.centurylinklabs.watchtower.enable: 'true' com.centurylinklabs.watchtower.enable: 'true'
homepage.container: zabbix-server-zabbix-server-1 homepage.container: zabbix-server_zabbix-server
homepage.description: Monitoring server homepage.description: Monitoring server
homepage.group: Utilities homepage.group: Utilities
homepage.href: https://${APPNAME}.sectorq.eu homepage.href: https://${APPNAME}.sectorq.eu
@@ -105,26 +108,26 @@ services:
placement: placement:
constraints: constraints:
- node.role == manager - node.role == manager
postinstall: # postinstall:
image: debian:12-slim # image: debian:12-slim
environment: # environment:
PUID: '0' # PUID: '0'
PGID: '0' # PGID: '0'
volumes: # volumes:
- /usr/bin:/usr/bin # - /usr/bin:/usr/bin
- /usr/lib:/usr/lib # - /usr/lib:/usr/lib
- /var/run/docker.sock:/var/run/docker.sock # - /var/run/docker.sock:/var/run/docker.sock
- scripts:/scripts # - scripts:/scripts
entrypoint: # entrypoint:
- /bin/sh # - /bin/sh
- /scripts/install-curl.sh # - /scripts/install-curl.sh
deploy: # deploy:
replicas: 1 # replicas: 1
placement: # placement:
constraints: # constraints:
- node.role == manager # - node.role == manager
volumes: volumes:
scripts: db:
certs: certs:
alertscripts: alertscripts:
postgres-data: scripts:

View File

@@ -33,6 +33,17 @@ services:
TZ: Europe/Bratislava TZ: Europe/Bratislava
hostname: m-server hostname: m-server
image: pihole/pihole:latest image: pihole/pihole:latest
shm_size: '256mb'
logging:
driver: loki
options:
loki-url: http://192.168.77.101:3100/loki/api/v1/push
loki-relabel-config: |
- action: labelmap
regex: swarm_stack
replacement: namespace
- action: labelmap
regex: swarm_(service)
labels: labels:
com.centurylinklabs.watchtower.enable: 'true' com.centurylinklabs.watchtower.enable: 'true'
homepage.container: pihole homepage.container: pihole
@@ -53,10 +64,15 @@ services:
pihole: pihole:
ipv4_address: 192.168.78.254 ipv4_address: 192.168.78.254
ports: ports:
- '53:53' - '53:53/udp'
- '9380:80' - '9380:80'
- '9343:443' - '9343:443'
restart: always restart: always
volumes: volumes:
- /share/docker_data/pihole/etc-pihole:/etc/pihole - data:/etc/pihole
- /share/docker_data/pihole/etc-dnsmasq.d:/etc/dnsmasq.d - dnsmasq_d:/etc/dnsmasq.d
volumes:
data:
driver: local
dnsmasq_d:
driver: local

View File

@@ -1,5 +1,5 @@
volumes: volumes:
regsync-data: data:
driver: local driver: local
services: services:
regsync: regsync:
@@ -10,9 +10,13 @@ services:
labels: labels:
wud.watch: true wud.watch: true
wud.watch.digest: true wud.watch.digest: true
logging:
driver: loki
options:
loki-url: http://192.168.77.101:3100/loki/api/v1/push
network_mode: host network_mode: host
restart: ${RESTART:-unless-stopped} restart: ${RESTART:-unless-stopped}
stdin_open: true stdin_open: true
volumes: volumes:
- regsync-data:/home/appuser/ - data:/home/appuser/
- /etc/localtime:/etc/localtime - /etc/localtime:/etc/localtime