https://github.com/ebertek/ebertek-compose
A collection of Docker Compose files for various self-hosted services.
https://github.com/ebertek/ebertek-compose
docker-compose self-hosted
Last synced: 6 months ago
JSON representation
A collection of Docker Compose files for various self-hosted services.
- Host: GitHub
- URL: https://github.com/ebertek/ebertek-compose
- Owner: ebertek
- Created: 2025-04-28T15:27:48.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2025-06-27T12:02:15.000Z (6 months ago)
- Last Synced: 2025-06-28T02:01:57.095Z (6 months ago)
- Topics: docker-compose, self-hosted
- Language: Shell
- Homepage:
- Size: 174 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ebertek-compose
A collection of Docker Compose files and shell scripts.
## Docker Compose
### [ebertek/](ebertek/)
- **[bind9](https://hub.docker.com/r/ubuntu/bind9)**: DNS management.
- **[watchtower](https://hub.docker.com/r/containrrr/watchtower)**: Automatic Docker container base image updates.
### [tntphoto/](tntphoto/)
- **[mariadb](https://hub.docker.com/_/mariadb)**: Relational database for WordPress.
- **[wordpress](https://hub.docker.com/_/wordpress)**: Content management system.
- **[nginx](https://hub.docker.com/_/nginx)**: Reverse proxy server for WordPress.
### [ygg/](ygg/)
- **[macvlan](https://docs.docker.com/engine/network/drivers/macvlan/)**: Creates the Macvlan network used by all `ygg-*` Compose files.
- **[watchtower](https://hub.docker.com/r/containrrr/watchtower)**: Automatic Docker container base image updates.
### [ygg-arr/](ygg-arr/)
- **[pg](https://hub.docker.com/_/postgres)**: Object-relational database sytem for \*arr.
- **[prowlarr](https://hotio.dev/containers/prowlarr/)**: Indexer manager for \*arr.
- **[radarr](https://hotio.dev/containers/radarr/)**: Movie organizer/manager.
- **[sonarr](https://hotio.dev/containers/sonarr/)**: Smart PVR.
- **[bazarr](https://hotio.dev/containers/bazarr/)**: Subtitle manager for Sonarr/Radarr.
- **[lidarr](https://hotio.dev/containers/lidarr/)**: Music collection manager.
- **[requestrr](https://hotio.dev/containers/requestrr/)**: Discord chatbot for \*arr.
- **[recyclarr](https://github.com/recyclarr/recyclarr)**: Automatically sync [TRaSH Guides](https://trash-guides.info) to your Sonarr/Radarr instances.
### [ygg-core/](ygg-core/)
- **[omada](https://hub.docker.com/r/mbentley/omada-controller)**: TP-Link Omada controller.
- **[cloudflared](https://hub.docker.com/r/cloudflare/cloudflared)**: Client for Cloudflare Tunnel.
- **[dns](https://hub.docker.com/r/technitium/dns-server)**: Technitium DNS Server.
- **[traefik](https://hub.docker.com/_/traefik)**: HTTP reverse proxy.
### [ygg-download/](ygg-download/)
- **[gluetun](https://hub.docker.com/r/qmcgaw/gluetun)**: VPN client.
- **[download](https://docs.linuxserver.io/images/docker-qbittorrent/)**: BitTorrent client.
### [ygg-hass/](ygg-hass/)
- **[matter-server](https://github.com/home-assistant-libs/python-matter-server)**: Matter Controller Server.
- **[mosquitto](https://hub.docker.com/_/eclipse-mosquitto)**: Message broker.
- **[ps5-mqtt](https://github.com/FunkeyFlo/ps5-mqtt)**: PlayStation 5 status integration using MQTT.
- **[zigbee2mqtt](https://hub.docker.com/r/koenkk/zigbee2mqtt/)**: Zigbee to MQTT bridge.
- **[hass](https://github.com/home-assistant/core)**: Home automation.
- **[esphome](https://github.com/esphome/esphome)**: Control ESP32 devices.
- **[esp-1](_persistent/hass/esphome/esp-1.yaml)**: Espressif ESP32-S3-BOX-3
- **[esp-2](_persistent/hass/esphome/esp-2.yaml)**: Espressif ESP32-S3-DevKitC-1-N32R8V + Microphone Unit
- **[esp-3](_persistent/hass/esphome/esp-3.yaml)**: M5Stack AtomS3 Lite ESP32S3 Dev Kit + Light Unit
- **[esp-4](_persistent/hass/esphome/esp-4.yaml)**: M5Stack AtomS3 Lite ESP32S3 Dev Kit + AtomPortABC + ENVIV Unit (SHT40/BMP280) + PA.HUB 2 Unit + Mini TVOC/eCO2 Ga Unit
- **[esp-5](_persistent/hass/esphome/esp-5.yaml)**: M5Stack NanoC6 ESP32-C6FH4 Dev Kit + Earth Unit
- **[esp-6](_persistent/hass/esphome/esp-6.yaml)**: M5Stack NanoC6 ESP32-C6FH4 Dev Kit + Earth Unit
### [ygg-home/](ygg-home/)
- **[plex](https://hub.docker.com/r/plexinc/pms-docker/)**: Media server.
- **[tautulli](https://github.com/Tautulli/Tautulli)**: Monitoring and tracking tool for Plex.
- **[bjornify](https://github.com/ebertek/bjornify)**: Discord bot based on discord.py that adds requested tracks to your Spotify playback queue.
- **[tmm](https://hub.docker.com/r/tinymediamanager/tinymediamanager)**: Media management tool.
- **[books](https://docs.linuxserver.io/images/docker-calibre-web/)**: Web app for browsing, reading and downloading eBooks.
### [ygg-immich/](ygg-immich/)
- **[immich](https://github.com/immich-app/immich)**: Photo and video management.
- **[immich-machine-learning](https://github.com/immich-app/immich/tree/main/machine-learning)**: CLIP embeddings and facial recognition for Immich.
- **[redis](https://hub.docker.com/r/valkey/valkey/)**: Data structure server for Immich.
- **[database](https://hub.docker.com/r/tensorchord/pgvecto-rs)**: Scalable vector search in Postgres for Immich.
### [ygg-other/](ygg-other/)
- **[irc](https://github.com/thelounge/thelounge-docker)**: Web IRC client.
- **[vw](https://hub.docker.com/r/vaultwarden/server)**: Password management service.
- **[acmesh](https://hub.docker.com/r/neilpang/acme.sh)**: [ACME client](https://github.com/acmesh-official/acme.sh) for Let's Encrypt certificates.
- **[smtp](https://hub.docker.com/r/turgon37/smtp-relay)**: Postfix SMTP server configured as an SMTP relay.
- **[dbeaver](https://hub.docker.com/r/dbeaver/cloudbeaver)**: Cloud database manager.
## Scripts
### [Scripts/](Scripts/)
- **pull_persistent**: Pull persistent files that should be version tracked.
- **thang010146**: Back up videos from [Nguyen Duc Thang](https://www.youtube.com/user/thang010146).
- **update-matter**: Fix routing between _matter_server_ and Matter devices.
### [acmesh/](Scripts/acmesh/)
- **10-acmesh**: Renew all certificates.
- **20-plex**: Replace _plex_ certificate.
- **30-vpc**: Replace _tntphoto_ certificates.
- **40-syno**: Replace Synology certificates.
- **50-hass**: Replace _hass_ certificates.
### [backup/](Scripts/backup/)
- **hc-sync**: Back up persistent storage from _tntphoto_.
- **photo-sync**: Back up photos.
- **ygg-sync**: Back up persistent storage from NAS.
### [startup/](Scripts/startup/)
- **00-startup**: Load all other scripts.
- **10-fix-sysctl**: Allow memory overcommit, increase the maximum number of incoming connections, fix networking for Docker, increase file system watch limit, [update Docker](<(https://github.com/markdumay/synology-docker)>), [update Synology compatible drive database](https://github.com/007revad/Synology_HDD_db).
- **20-insmod-tun**: Load the `tun` kernel module required for VPN.
- **30-macvlan**: Fix routing between the host and the Macvlan network used by _ygg_.
- **40-disable-active_insight**: Remove Synology Active Insight.
- **50-sdp**: Active current IP for [Smart DNS Proxy](https://www.smartdnsproxy.com/services/).
- **60-rclone**: Update [rclone](https://rclone.org).
- **70-youtube**: Update [yt-dlp](https://github.com/yt-dlp/yt-dlp).
## Requirements
- Docker and Docker Compose.
- Synology's Container Manager contains an old version of Docker; the [synology-docker](https://github.com/markdumay/synology-docker) script can be used to update it.
- Some folders require specific environment files.
## Usage
1. Update the following elements in `compose.yaml` to work with your environment:
- `dns`
- `dns_search`
- `environment`
- `extra_hosts`
- `mac_address`
- `networks`
- `user`
- `volumes`
2. Update the `.txt` files with your own secrets.
3. Deploy:
```sh
cd
docker compose up -d
```