stacks/homelab/docker-compose.yaml

158 lines
3.3 KiB
YAML

version: "3.8"
services:
caddy:
image: caddy:2-alpine
ports:
- target: 443
published: 443
mode: host
- target: 80
published: 80
mode: host
volumes:
- type: bind
source: /srv/ext
target: /srv/ext
read_only: true
- type: bind
source: /srv/ext/sys/caddy
target: /data/caddy
configs:
- source: Caddyfile
target: /etc/caddy/Caddyfile
- source: index.html
target: /www/index.html
secrets:
- caddy-users
extra_hosts:
- host.docker.internal:host-gateway
plex:
image: ghcr.io/linuxserver/plex
networks:
- hostnet
environment:
TZ: US/Mountain
VERSION: public
PLEX_CLAIM: claim-jp4-HfTyRzCce4WzUdj5
volumes:
- type: bind
source: /srv/ext/sys/plex
target: /config
- type: bind
source: /srv
target: /srv
read_only: true
bind:
propagation: rslave
transmission:
image: ghcr.io/linuxserver/transmission
networks:
- hostnet
volumes:
- type: bind
source: /srv/ext/sys/transmission
target: /config
- type: bind
source: /srv/ext/incoming
target: /srv/ext/incoming
gitea:
image: gitea/gitea:1
environment:
USER_UID: 1000
USER_GID: 1000
volumes:
- type: bind
source: /srv/ext/sys/gitea
target: /data
- type: bind
source: /etc/timezone
target: /etc/timezone
read_only: true
- type: bind
source: /etc/localtime
target: /etc/localtime
read_only: true
atlas:
image: ctassisf/ripe-atlas-alpine:arm64v8
volumes:
- type: bind
source: /srv/ext/sys/atlas/etc
target: /var/atlas-probe/etc
- type: bind
source: /srv/ext/sys/atlas/status
target: /var/atlas-probe/status
networks:
- hostnet
geneweb:
image: ravermeister/geneweb
volumes:
- type: bind
source: /srv/ext/sys/geneweb/etc
target: /usr/local/share/geneweb/etc
- type: bind
source: /srv/ext/sys/geneweb/share/data
target: /usr/local/share/geneweb/share/data
- type: bind
source: /srv/ext/sys/geneweb/log
target: /usr/local/share/geneweb/log
samba:
image: dperson/samba
volumes:
- type: bind
source: /srv/ext
target: /srv/ext
bind:
propagation: rslave
environment:
NMBD: enable
RECYCLE: disable
USERID: 911
GROUPID: 911
# name;path;browse;readonly;guest
SHARE1: drive;/srv/ext;yes;no;no
env_file:
- secrets/samba-users.env
ports:
- published: 139
target: 139
- published: 445
target: 445
webdav:
image: micromata/dave
volumes:
- type: bind
source: /srv/ext
target: /data
configs:
- source: dave.yaml
target: /config/config.yaml
user: "911:911"
configs:
dave.yaml:
file: dave.yaml
name: dave.yaml-v3
Caddyfile:
file: Caddyfile
name: Caddyfile-v17
index.html:
file: index.html
name: index.html-v8
secrets:
caddy-users:
file: secrets/caddy-users
name: caddy-users-v2
networks:
hostnet:
external: true
name: host