add some documentation in comments
This commit is contained in:
parent
11f3e887eb
commit
50198bb918
10 changed files with 208 additions and 92 deletions
37
.env_template
Normal file
37
.env_template
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
|
||||||
|
#SYSINFO
|
||||||
|
# Time zone - get identifier here: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
|
||||||
|
TZ=
|
||||||
|
# UID & GID - get by running 'id' command as user who should own files
|
||||||
|
UID=
|
||||||
|
GID=
|
||||||
|
#because home assistant throws a fit if the reverse proxy ip address changes, which it tends to when recreated/restarted. Make this something like "172.1.1."
|
||||||
|
SUBNET_PREFIX=
|
||||||
|
|
||||||
|
#URLS
|
||||||
|
#lldap server url
|
||||||
|
LLDAP_SERVER=
|
||||||
|
|
||||||
|
#PATHS
|
||||||
|
# Data Path - this is the parent directory where all of your persistent container data will be stored
|
||||||
|
DATA_PATH=
|
||||||
|
# Media Path - this is the parent directory where all of your media is stored- you can use samba to connect to remote media drive
|
||||||
|
MEDIA_PATH=
|
||||||
|
|
||||||
|
#PORTS
|
||||||
|
#These are the ports services will be available at. I've left my reccomendations here
|
||||||
|
DDNS_PORT=8001
|
||||||
|
KUMA_PORT=3001
|
||||||
|
|
||||||
|
LLDAP_LDAP_PORT=3890
|
||||||
|
LLDAP_LDAPS_PORT=6360
|
||||||
|
LLDAP_WEBUI_PORT=17170
|
||||||
|
|
||||||
|
ORGANIZR_PORT=8449
|
||||||
|
|
||||||
|
NGINX_HTTP_PORT=80
|
||||||
|
NGINX_WEBUI_PORT=81
|
||||||
|
NGINX_HTTPS_PORT=443
|
||||||
|
|
||||||
|
WYOMING_PIPER_PORT=10200
|
||||||
|
WYOMING_WHISPER_PORT=10300
|
8
.gitignore
vendored
8
.gitignore
vendored
|
@ -1,7 +1 @@
|
||||||
ddns-updater/data/
|
.env
|
||||||
home_assistant/config/
|
|
||||||
kuma/data/
|
|
||||||
lldap/lldap_data/
|
|
||||||
nginx/config/
|
|
||||||
wyoming_piper/data/
|
|
||||||
wyoming_whisper/data/
|
|
||||||
|
|
|
@ -1,35 +0,0 @@
|
||||||
version: "3.7"
|
|
||||||
services:
|
|
||||||
ddns-updater:
|
|
||||||
image: qmcgaw/ddns-updater
|
|
||||||
container_name: ddns-updater
|
|
||||||
network_mode: bridge
|
|
||||||
ports:
|
|
||||||
- 8001:8000/tcp
|
|
||||||
volumes:
|
|
||||||
- ./data:/updater/data
|
|
||||||
environment:
|
|
||||||
- CONFIG=
|
|
||||||
- PERIOD=5m
|
|
||||||
- UPDATE_COOLDOWN_PERIOD=5m
|
|
||||||
- PUBLICIP_FETCHERS=all
|
|
||||||
- PUBLICIP_HTTP_PROVIDERS=all
|
|
||||||
- PUBLICIPV4_HTTP_PROVIDERS=all
|
|
||||||
- PUBLICIPV6_HTTP_PROVIDERS=all
|
|
||||||
- PUBLICIP_DNS_PROVIDERS=all
|
|
||||||
- PUBLICIP_DNS_TIMEOUT=3s
|
|
||||||
- HTTP_TIMEOUT=10s
|
|
||||||
|
|
||||||
# Web UI
|
|
||||||
- LISTENING_PORT=8000
|
|
||||||
- ROOT_URL=/
|
|
||||||
|
|
||||||
# Backup
|
|
||||||
- BACKUP_PERIOD=0 # 0 to disable
|
|
||||||
- BACKUP_DIRECTORY=/updater/data
|
|
||||||
|
|
||||||
# Other
|
|
||||||
- LOG_LEVEL=info
|
|
||||||
- LOG_CALLER=hidden
|
|
||||||
- SHOUTRRR_ADDRESSES=
|
|
||||||
restart: always
|
|
170
docker-compose.yml
Normal file
170
docker-compose.yml
Normal file
|
@ -0,0 +1,170 @@
|
||||||
|
version: "3.8"
|
||||||
|
|
||||||
|
networks:
|
||||||
|
authelia:
|
||||||
|
driver: bridge
|
||||||
|
docker-local:
|
||||||
|
driver: bridge
|
||||||
|
ipam:
|
||||||
|
driver: default
|
||||||
|
config:
|
||||||
|
- subnet: ${SUBNET_PREFIX}0/24
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
portainer_data:
|
||||||
|
name: portainer_data
|
||||||
|
|
||||||
|
services:
|
||||||
|
|
||||||
|
portainer: #Portainer is a web UI for managing your docker containers https://www.portainer.io/
|
||||||
|
image: portainer/portainer-ce:latest
|
||||||
|
container_name: portainer
|
||||||
|
volumes:
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
|
- portainer_data:/data
|
||||||
|
ports:
|
||||||
|
- "8000:8000"
|
||||||
|
- "9443:9443"
|
||||||
|
restart: always
|
||||||
|
|
||||||
|
organizr: #organizr is a server control panel https://github.com/causefx/Organizr
|
||||||
|
image: organizr/organizr
|
||||||
|
container_name: organizr
|
||||||
|
volumes:
|
||||||
|
- ${DATA_PATH}/organizr/config:/config
|
||||||
|
environment:
|
||||||
|
- PGID=${GID}
|
||||||
|
- PUID=${UID}
|
||||||
|
- TZ=${TZ}
|
||||||
|
- branch=v2-master
|
||||||
|
ports:
|
||||||
|
- ${ORGANIZR_PORT}:80
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
|
ddns-updater: # dns updater, prevents issues caused by cycling residential ip address https://hub.docker.com/r/qmcgaw/ddns-updater
|
||||||
|
image: qmcgaw/ddns-updater:latest
|
||||||
|
container_name: ddns-updater
|
||||||
|
networks:
|
||||||
|
docker-local:
|
||||||
|
ipv4_address: ${SUBNET_PREFIX}2
|
||||||
|
environment:
|
||||||
|
- LISTENING_PORT=8000
|
||||||
|
- ROOT_URL=/
|
||||||
|
- TZ=${TZ}
|
||||||
|
volumes:
|
||||||
|
- ${DATA_PATH}/ddns-updater/data:/updater/data
|
||||||
|
ports:
|
||||||
|
- ${DDNS_PORT}:8000/tcp
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
|
home-assistant: #home automation hub. Control lights, audio, temperature, etc. https://www.home-assistant.io/installation/linux#docker-compose
|
||||||
|
image: ghcr.io/home-assistant/home-assistant:stable
|
||||||
|
container_name: home-assistant
|
||||||
|
volumes:
|
||||||
|
- ${DATA_PATH}/home-assistant/config:/config
|
||||||
|
- /etc/localtime:/etc/localtime:ro
|
||||||
|
- /run/dbus:/run/dbus:ro
|
||||||
|
- ${MEDIA_PATH}:/media/Media:ro
|
||||||
|
privileged: true
|
||||||
|
network_mode: host
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
|
uptime-kuma: # uptime watcher, send notifications when something is down https://github.com/louislam/uptime-kuma
|
||||||
|
image: louislam/uptime-kuma:latest
|
||||||
|
container_name: uptime-kuma
|
||||||
|
networks:
|
||||||
|
docker-local:
|
||||||
|
ipv4_address: ${SUBNET_PREFIX}3
|
||||||
|
volumes:
|
||||||
|
- ${DATA_PATH}/uptime-kuma/data:/app/data
|
||||||
|
ports:
|
||||||
|
- ${KUMA_PORT}:3001
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
|
lldap: #very simple LDAP implementation- in case you want a central account for all other services https://github.com/lldap/lldap
|
||||||
|
image: nitnelave/lldap:stable
|
||||||
|
container_name: lldap
|
||||||
|
networks:
|
||||||
|
docker-local:
|
||||||
|
ipv4_address: ${SUBNET_PREFIX}4
|
||||||
|
volumes:
|
||||||
|
- ${DATA_PATH}/lldap/data:/data
|
||||||
|
hostname: ${LLDAP_SERVER}
|
||||||
|
ports:
|
||||||
|
- ${LLDAP_LDAP_PORT}:3890
|
||||||
|
- ${LLDAP_WEBUI_PORT}:17170
|
||||||
|
- ${LLDAP_LDAPS_PORT}:6360
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
|
nginx-proxy-manager: # web ui for managing nginx reverse proxy config https://nginxproxymanager.com/
|
||||||
|
image: jc21/nginx-proxy-manager:latest
|
||||||
|
container_name: nginx-proxy-manager
|
||||||
|
networks:
|
||||||
|
docker-local:
|
||||||
|
ipv4_address: ${SUBNET_PREFIX}5
|
||||||
|
volumes:
|
||||||
|
- ${DATA_PATH}/nginx-proxy-manager/data:/data
|
||||||
|
- ${DATA_PATH}/nginx-proxy-manager/letsencrypt:/etc/letsencrypt
|
||||||
|
- ${DATA_PATH}/nginx-proxy-manager/static:/static
|
||||||
|
- ${DATA_PATH}/nginx-proxy-manager/snippets:/snippets:ro
|
||||||
|
ports:
|
||||||
|
- ${NGINX_HTTP_PORT}:80
|
||||||
|
- ${NGINX_WEBUI_PORT}:81
|
||||||
|
- ${NGINX_HTTPS_PORT}:443
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
|
authelia: # authentication frontend for services that don't natively support external login
|
||||||
|
image: authelia/authelia
|
||||||
|
container_name: authelia
|
||||||
|
environment:
|
||||||
|
- PUID=${UID}
|
||||||
|
- PGID=${GID}
|
||||||
|
- TZ=${TZ}
|
||||||
|
volumes:
|
||||||
|
- ${DATA_PATH}/authelia/config:/config
|
||||||
|
networks:
|
||||||
|
- authelia
|
||||||
|
ports:
|
||||||
|
- 9091:9091
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
|
authelia-redis: # data structure server for authelia #https://redis.io/docs/about/
|
||||||
|
image: redis:alpine
|
||||||
|
container_name: authelia-redis
|
||||||
|
environment:
|
||||||
|
- TZ=${TZ}
|
||||||
|
- PUID=${UID}
|
||||||
|
- PGID=${GID}
|
||||||
|
volumes:
|
||||||
|
- ${DATA_PATH}/authelia/redis:/data
|
||||||
|
networks:
|
||||||
|
- authelia
|
||||||
|
expose:
|
||||||
|
- 6379
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
|
wyoming-piper: # text to speech for home assistant https://github.com/rhasspy/wyoming-addons
|
||||||
|
image: rhasspy/wyoming-piper
|
||||||
|
container_name: wyoming-piper
|
||||||
|
networks:
|
||||||
|
docker-local:
|
||||||
|
ipv4_address: ${SUBNET_PREFIX}6
|
||||||
|
volumes:
|
||||||
|
- ${DATA_PATH}/wyoming_piper/data:/data
|
||||||
|
ports:
|
||||||
|
- ${WYOMING_PIPER_PORT}:10200
|
||||||
|
command: --voice en-us-libritts-high
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
|
wyoming-whisper: #speech to text for home assistant https://github.com/rhasspy/wyoming-addons
|
||||||
|
image: rhasspy/wyoming-whisper
|
||||||
|
container_name: wyoming_whisper
|
||||||
|
networks:
|
||||||
|
docker-local:
|
||||||
|
ipv4_address: ${SUBNET_PREFIX}7
|
||||||
|
volumes:
|
||||||
|
- ${DATA_PATH}/wyoming_whisper/data:/data
|
||||||
|
ports:
|
||||||
|
- ${WYOMING_WHISPER_PORT}:10300
|
||||||
|
command: --model tiny-int8 --language en
|
||||||
|
restart: unless-stopped
|
|
@ -1,13 +0,0 @@
|
||||||
version: '3'
|
|
||||||
services:
|
|
||||||
homeassistant:
|
|
||||||
container_name: homeassistant
|
|
||||||
image: "ghcr.io/home-assistant/home-assistant:stable"
|
|
||||||
volumes:
|
|
||||||
- ./config:/config
|
|
||||||
- /etc/localtime:/etc/localtime:ro
|
|
||||||
- /run/dbus:/run/dbus:ro
|
|
||||||
- /mnt/smb/Plex/Music:/media/Music:ro
|
|
||||||
restart: unless-stopped
|
|
||||||
privileged: true
|
|
||||||
network_mode: host
|
|
|
@ -1,10 +0,0 @@
|
||||||
version: '3.3'
|
|
||||||
services:
|
|
||||||
uptime-kuma:
|
|
||||||
restart: always
|
|
||||||
ports:
|
|
||||||
- '3001:3001'
|
|
||||||
volumes:
|
|
||||||
- './data:/app/data'
|
|
||||||
container_name: uptime-kuma
|
|
||||||
image: 'louislam/uptime-kuma:1'
|
|
|
@ -1,12 +0,0 @@
|
||||||
version: '3.3'
|
|
||||||
services:
|
|
||||||
lldap:
|
|
||||||
volumes:
|
|
||||||
- './lldap_data:/data'
|
|
||||||
restart: always
|
|
||||||
hostname: accounts.pogmom.me
|
|
||||||
ports:
|
|
||||||
- '3890:3890'
|
|
||||||
- '17170:17170'
|
|
||||||
- '6360:6360'
|
|
||||||
image: 'nitnelave/lldap:stable'
|
|
|
@ -1,13 +0,0 @@
|
||||||
version: '3.8'
|
|
||||||
services:
|
|
||||||
app:
|
|
||||||
image: 'jc21/nginx-proxy-manager:2.9.22'
|
|
||||||
restart: unless-stopped
|
|
||||||
ports:
|
|
||||||
- '80:80'
|
|
||||||
- '81:81'
|
|
||||||
- '443:443'
|
|
||||||
volumes:
|
|
||||||
- ./config/data:/data
|
|
||||||
- ./config/letsencrypt:/etc/letsencrypt
|
|
||||||
- ./config/static:/static
|
|
|
@ -1 +0,0 @@
|
||||||
docker run --restart=always -it -p 10200:10200 -v /home/pogmom/Dockers/wyoming_piper/data:/data rhasspy/wyoming-piper --voice en-us-libritts-high
|
|
|
@ -1 +0,0 @@
|
||||||
docker run --restart=always -it -p 10300:10300 -v /home/pogmom/Dockers/wyoming_whisper/data:/data rhasspy/wyoming-whisper --model tiny-int8 --language en
|
|
Loading…
Add table
Reference in a new issue