Compare commits

...

14 Commits

9 changed files with 74 additions and 27 deletions

View File

@@ -38,9 +38,15 @@ services:
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.semaphore.entrypoints=web" - "traefik.http.routers.semaphore.entrypoints=web"
- "traefik.http.routers.semaphore.rule=Host(`ansible.lan`)" - "traefik.http.routers.semaphore.rule=Host(`ansible.fam-steinle.de`)"
- "traefik.http.routers.semaphore.service=semaphore" - "traefik.http.routers.semaphore.middlewares=semaphore"
- "traefik.http.services.semaphore.loadbalancer.server.port=3000" - "traefik.http.middlewares.semaphore.redirectscheme.scheme=https"
- "traefik.http.routers.semaphore-secure.entrypoints=websecure"
- "traefik.http.routers.semaphore-secure.rule=Host(`ansible.fam-steinle.de`)"
- "traefik.http.routers.semaphore-secure.service=semaphore-secure"
- "traefik.http.routers.semaphore-secure.tls=true"
- "traefik.http.routers.semaphore-secure.tls.certresolver=myresolver"
- "traefik.http.services.semaphore-secure.loadbalancer.server.port=3000"
- "com.centurylinklabs.watchtower.monitor-only=true" - "com.centurylinklabs.watchtower.monitor-only=true"
semaphore-db: semaphore-db:

View File

@@ -7,31 +7,37 @@ volumes:
name: duplicati-conf name: duplicati-conf
nextcloud-data: nextcloud-data:
external: true external: true
gitea:
external: true
services: services:
duplicati: duplicati:
image: duplicati/duplicati:beta image: duplicati/duplicati:stable
restart: unless-stopped restart: unless-stopped
container_name: duplicati container_name: duplicati
hostname: duplicati hostname: duplicati
ports:
- "8200:8200"
volumes: volumes:
- duplicati-conf:/data - duplicati-conf:/data
- nextcloud-data:/nextcloud:ro - nextcloud-data:/nextcloud:ro
- gitea:/gitea:ro
- /media/backup:/backup - /media/backup:/backup
networks:
- proxy
environment: environment:
DUPLICATI__DISABLE_DB_ENCRYPTION: true DUPLICATI__DISABLE_DB_ENCRYPTION: true
deploy: DUPLICATI__WEBSERVICE_ALLOWEDHOSTNAMES: backup.fam-steinle.de
resources: networks:
limits: - proxy
memory: 16g ports:
- "8200:8200"
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.duplicati.entrypoints=web" - "traefik.http.routers.duplicati.entrypoints=web"
- "traefik.http.routers.duplicati.rule=Host(`duplicati.lan`)" - "traefik.http.routers.duplicati.rule=Host(`backup.fam-steinle.de`)"
- "traefik.http.services.duplicati.loadbalancer.server.port=8200" - "traefik.http.routers.duplicati.middlewares=duplicati"
- "traefik.http.middlewares.duplicati.redirectscheme.scheme=https"
- "traefik.http.routers.duplicati-secure.entrypoints=websecure"
- "traefik.http.routers.duplicati-secure.rule=Host(`backup.fam-steinle.de`)"
- "traefik.http.routers.duplicati-secure.service=duplicati-secure"
- "traefik.http.routers.duplicati-secure.tls=true"
- "traefik.http.routers.duplicati-secure.tls.certresolver=myresolver"
- "traefik.http.services.duplicati-secure.loadbalancer.server.port=8200"

View File

@@ -4,6 +4,7 @@ networks:
gitea: gitea:
name: gitea name: gitea
external: false external: false
enable_ipv6: true
volumes: volumes:
gitea: gitea:
@@ -75,11 +76,14 @@ services:
runner: runner:
image: gitea/act_runner image: gitea/act_runner
restart: always restart: always
privileged: true
depends_on: depends_on:
- gitea - gitea
volumes: volumes:
- gitea-runner:/data - gitea-runner:/data
- /var/run/docker.sock:/var/run/docker.sock - /var/run/docker.sock:/var/run/docker.sock
networks:
- gitea
environment: environment:
- GITEA_INSTANCE_URL=https://gitea.fam-steinle.de - GITEA_INSTANCE_URL=https://gitea.fam-steinle.de
- GITEA_RUNNER_REGISTRATION_TOKEN=FQDt05qG37BLO0OBl6eX94aNNVE9Ni5nFdeVFoKm - GITEA_RUNNER_REGISTRATION_TOKEN=FQDt05qG37BLO0OBl6eX94aNNVE9Ni5nFdeVFoKm

View File

@@ -23,7 +23,6 @@ services:
ADMINMAIL: ${ADMIN_USER} ADMINMAIL: ${ADMIN_USER}
ADMINPASS: ${ADMIN_PASS} ADMINPASS: ${ADMIN_PASS}
DATABASE_URL: mysql://${DB_USER}:${DB_PASS}@kimai-db/${DB_NAME}?charset=utf8&serverVersion=8.1.0 DATABASE_URL: mysql://${DB_USER}:${DB_PASS}@kimai-db/${DB_NAME}?charset=utf8&serverVersion=8.1.0
TRUSTED_HOSTS: kimai.lan,kimai-web,localhost,127.0.0.1
APP_SECRET: ${APP_SECRET} APP_SECRET: ${APP_SECRET}
depends_on: depends_on:
- kimai-db - kimai-db

View File

@@ -29,7 +29,7 @@ services:
- "traefik.http.services.prometheus.loadbalancer.server.port=9090" - "traefik.http.services.prometheus.loadbalancer.server.port=9090"
cadvisor: cadvisor:
image: gcr.io/cadvisor/cadvisor:v0.51.0 image: gcr.io/cadvisor/cadvisor:v0.52.1
container_name: cadvisor container_name: cadvisor
hostname: cadvisor hostname: cadvisor
restart: unless-stopped restart: unless-stopped
@@ -98,7 +98,7 @@ services:
environment: environment:
WATCHTOWER_INCLUDE_STOPPED: true WATCHTOWER_INCLUDE_STOPPED: true
WATCHTOWER_MONITOR_ONLY: false WATCHTOWER_MONITOR_ONLY: false
WATCHWOWER_CLEANUP: true WATCHTOWER_CLEANUP: true
WATCHTOWER_REMOVE_VOLUMES: true WATCHTOWER_REMOVE_VOLUMES: true
WATCHTOWER_WARN_ON_HEAD_FAILURE: "never" WATCHTOWER_WARN_ON_HEAD_FAILURE: "never"
WATCHTOWER_SCHEDULE: "0 20 4 * * *" WATCHTOWER_SCHEDULE: "0 20 4 * * *"

View File

@@ -14,7 +14,7 @@ networks:
gateway: 192.168.178.1 gateway: 192.168.178.1
ip_range: 192.168.178.0/29 ip_range: 192.168.178.0/29
- subnet: fd00::/64 - subnet: fd00::/64
gateway: fd00::de15:c8ff:feec:9960 gateway: fd00::4a5d:35ff:fed9:b94f
ip_range: fd00::0/80 ip_range: fd00::0/80
name: home name: home
proxy: proxy:
@@ -48,6 +48,7 @@ services:
home: home:
ipv4_address: 192.168.178.2 ipv4_address: 192.168.178.2
ipv6_address: fd00::2 ipv6_address: fd00::2
proxy:
ports: ports:
- "80:80" - "80:80"
- "443:443" - "443:443"
@@ -68,6 +69,8 @@ services:
- "traefik.http.routers.pihole-secure.middlewares=pihole-secure" - "traefik.http.routers.pihole-secure.middlewares=pihole-secure"
- "traefik.http.middlewares.pihole-secure.headers.addvaryheader=true" - "traefik.http.middlewares.pihole-secure.headers.addvaryheader=true"
- "traefik.http.middlewares.pihole-secure.headers.accesscontrolalloworiginlist=https://homer.fam-steinle.de" - "traefik.http.middlewares.pihole-secure.headers.accesscontrolalloworiginlist=https://homer.fam-steinle.de"
- "traefik.http.middlewares.pihole-secure.headers.accesscontrolallowheaders=*"
- "traefik.http.middlewares.pihole-secure.headers.accesscontrolallowmethods=GET,POST,OPTIONS"
- "traefik.http.routers.pihole-secure.service=pihole-secure" - "traefik.http.routers.pihole-secure.service=pihole-secure"
- "traefik.http.routers.pihole-secure.tls=true" - "traefik.http.routers.pihole-secure.tls=true"
- "traefik.http.routers.pihole-secure.tls.certresolver=myresolver" - "traefik.http.routers.pihole-secure.tls.certresolver=myresolver"
@@ -102,11 +105,36 @@ services:
environment: environment:
NFS_DIR: /nfs-share NFS_DIR: /nfs-share
NFS_DOMAIN: 192.168.178.0/24 NFS_DOMAIN: 192.168.178.0/24
NFS_OPTION: rw,sync,no_subtree_check,nohide,no_root_squash NFS_OPTION: rw,sync,no_subtree_check,nohide,no_root_squash,fsid=0
volumes: volumes:
- /media/backup:/nfs-share - /media/backup:/nfs-share
restart: unless-stopped restart: unless-stopped
# Exec into container at first start
# and create the user and the samba password:
# adduser USER
# smbpasswd -a USER
samba:
image: gists/samba-server
container_name: samba
hostname: samba
networks:
- networking
ports:
- "137:137/udp"
- "138:138/udp"
- "139:139/tcp"
- "445:445/tcp"
environment:
PUID: 1000
GUID: 1000
TZ: Europe/Berlin
PASSWORD: lmaa,dw.
restart: unless-stopped
volumes:
- ./smb.conf:/etc/samba/smb.conf:ro
- /media/backup:/mnt
sftp: sftp:
image: drakkan/sftpgo:alpine-slim image: drakkan/sftpgo:alpine-slim
container_name: sftp container_name: sftp

View File

@@ -5,6 +5,7 @@
security = user security = user
guest account = nobody guest account = nobody
map to guest = Bad User map to guest = Bad User
host msdfs = no
name resolve order = bcast host lmhosts wins name resolve order = bcast host lmhosts wins
load printers = no load printers = no

View File

@@ -60,12 +60,15 @@ services:
- "traefik.http.routers.nextcloud-secure.tls=true" - "traefik.http.routers.nextcloud-secure.tls=true"
- "traefik.http.routers.nextcloud-secure.tls.certresolver=myresolver" - "traefik.http.routers.nextcloud-secure.tls.certresolver=myresolver"
- "traefik.http.services.nextcloud-secure.loadbalancer.server.port=80" - "traefik.http.services.nextcloud-secure.loadbalancer.server.port=80"
- "traefik.http.routers.nextcloud-secure.middlewares=nextcloud-secure,nextcloud-redirect" - "traefik.http.routers.nextcloud-secure.middlewares=nextcloud-secure,nextcloud-redirect-1,nextcloud-redirect-2"
- "traefik.http.middlewares.nextcloud-secure.headers.stsSeconds=15552000" - "traefik.http.middlewares.nextcloud-secure.headers.stsSeconds=15552000"
- "traefik.http.middlewares.nextcloud-secure.headers.stsPreload=true" - "traefik.http.middlewares.nextcloud-secure.headers.stsPreload=true"
- "traefik.http.middlewares.nextcloud-redirect.redirectregex.permanent=true" - "traefik.http.middlewares.nextcloud-redirect-1.redirectregex.permanent=true"
- "traefik.http.middlewares.nextcloud-redirect.redirectregex.regex=^https://(.*)/.well-known/(card|cal)dav" - "traefik.http.middlewares.nextcloud-redirect-1.redirectregex.regex=^https://(.*)/.well-known/(card|cal)dav"
- "traefik.http.middlewares.nextcloud-redirect.redirectregex.replacement=https://$${1}/remote.php/dav/" - "traefik.http.middlewares.nextcloud-redirect-1.redirectregex.replacement=https://$${1}/remote.php/dav/"
- "traefik.http.middlewares.nextcloud-redirect-2.redirectregex.permanent=true"
- "traefik.http.middlewares.nextcloud-redirect-2.redirectregex.regex=^https://(.*)(/.well-known[^#]*)"
- "traefik.http.middlewares.nextcloud-redirect-2.redirectregex.replacement=https://$${1}/index.php$${2}"
depends_on: depends_on:
- nextcloud - nextcloud
networks: networks:

View File

@@ -14,7 +14,7 @@ volumes:
services: services:
broker: broker:
image: redis:7 image: redis:8
restart: unless-stopped restart: unless-stopped
volumes: volumes:
- paperless-redis:/data - paperless-redis:/data
@@ -75,7 +75,7 @@ services:
gotenberg: gotenberg:
image: docker.io/gotenberg/gotenberg:8.19 image: gotenberg/gotenberg:8.22
restart: unless-stopped restart: unless-stopped
command: command:
- "gotenberg" - "gotenberg"
@@ -85,7 +85,7 @@ services:
- paperless - paperless
tika: tika:
image: tika:latest image: apache/tika:latest
restart: unless-stopped restart: unless-stopped
networks: networks:
- paperless - paperless