Compare commits

...
Sign in to create a new pull request.

65 commits

Author SHA1 Message Date
redbeardymcgee
0569221088 feat(grocy): add Grocy 2025-04-23 09:16:41 -05:00
redbeardymcgee
8a20cf4a3b fix(penpot): correctly name mailcatcher 2025-04-22 10:43:22 -05:00
redbeardymcgee
c17d605334 fix(penpot): move env var to secret 2025-04-21 19:06:50 -05:00
redbeardymcgee
58f428285e feat(penpot): init Penpot 2025-04-21 19:03:59 -05:00
redbeardymcgee
b9f9b8d106 feat(speedtest-tracker): init speedtest-tracker 2025-04-21 10:22:56 -05:00
redbeardymcgee
500ffb5f8c fix(quadlets): normalize networks, volumes, update 2025-04-21 08:34:11 -05:00
redbeardymcgee
72f703b5f9 fix(leantime): correct volume reference 2025-04-19 06:47:06 -05:00
redbeardymcgee
93e97f11ae fix(leantime): add env file 2025-04-18 08:40:19 -05:00
redbeardymcgee
cb8ce2a2fb fix(caddy): add reverse-proxy network 2025-04-16 08:49:49 -05:00
redbeardymcgee
27c9ba29cc fix(leantime): correct image ref & env 2025-04-15 08:51:46 -05:00
redbeardymcgee
12eb66d913 fix(leantime): add env file and network 2025-04-15 08:51:27 -05:00
redbeardymcgee
793f61fb60 fix(leantime): add env vars and secrets 2025-04-15 08:18:34 -05:00
redbeardymcgee
a067a6c857 feat(leantime): add Leantime task management 2025-04-13 09:04:36 -05:00
redbeardymcgee
8e2fce82bb feat(maxun): add Maxun 2025-04-12 19:45:52 -05:00
redbeardymcgee
ddb6721ca7 feat(checkmate): add Checkmate monitoring 2025-04-12 19:15:50 -05:00
redbeardymcgee
67148f146f feat(apprise): add Apprise 2025-04-12 18:59:46 -05:00
redbeardymcgee
808c26324e feat(betanin): add betanin 2025-04-12 18:48:11 -05:00
redbeardymcgee
3cc8919e6d feat(graphite): add Graphite 2025-04-12 15:49:46 -05:00
redbeardymcgee
6d9e428987 feat(healthchecks): add healthchecks 2025-04-12 15:38:02 -05:00
redbeardymcgee
c48014cb23 feat(homepage): add Homepage 2025-04-12 15:22:12 -05:00
redbeardymcgee
6c66dff470 feat(komga): add Komga comic reader 2025-04-12 15:09:36 -05:00
redbeardymcgee
2af05d816b feat(miniflux): add miniflux rss reader 2025-04-12 15:02:03 -05:00
redbeardymcgee
2f11e411f2 feat(n8n): add n8n workflow automation 2025-04-12 14:54:00 -05:00
redbeardymcgee
d53c42a7f7 feat(openobserve): add OpenObserve 2025-04-12 14:43:48 -05:00
redbeardymcgee
38ca9db96a fix(pihole): add missing network 2025-04-12 12:18:21 -05:00
redbeardymcgee
f2f7a03e8d feat(pihole): add Pi-hole 2025-04-12 12:16:28 -05:00
redbeardymcgee
f3b4b61137 feat(pocket-id): add Pocket ID 2025-04-12 11:37:48 -05:00
redbeardymcgee
7079952150 feat(vikunja): add Vikunja 2025-04-12 11:22:55 -05:00
redbeardymcgee
f2628b947f chore(readme): mark glueforward complete 2025-04-12 10:48:19 -05:00
redbeardymcgee
42bc453386 chore(readme): update finished list 2025-04-12 10:40:37 -05:00
redbeardymcgee
2e77a9b6d0 fix(romm): correct Volume key 2025-04-12 10:17:34 -05:00
redbeardymcgee
ee171d2d46 fix(romm): typo in secret name 2025-04-12 09:56:42 -05:00
redbeardymcgee
b759dc832b feat(romm): add ROMM 2025-04-12 09:42:33 -05:00
redbeardymcgee
284310f9cb fix(vaultwarden): remove blank network 2025-04-10 19:10:49 -05:00
redbeardymcgee
1f507d9889 feat(vaultwarden): add vaultwarden 2025-04-10 08:32:17 -05:00
redbeardymcgee
29e77039ac fix(gaseous): link to correct mariadb 2025-04-07 19:55:04 -05:00
redbeardymcgee
8c98a4e63d fix(gaseous): add network 2025-04-07 19:53:24 -05:00
redbeardymcgee
740508e177 feat(gaseous): add gaseous rom manager 2025-04-07 19:23:15 -05:00
redbeardymcgee
1fdb890ee2 chore(readme): mark newly added quadlets 2025-04-02 19:14:49 -05:00
redbeardymcgee
53af271df2 feat(syslog-ng): add syslog-ng from LSIO 2025-04-02 12:14:48 -05:00
redbeardymcgee
295999f40d fix(graylog): remove unnecessary port 2025-04-02 12:10:43 -05:00
redbeardymcgee
5c3a58c1e8 fix(graylog): correct network ref & entrypoint 2025-04-02 10:32:15 -05:00
redbeardymcgee
659de22e42 feat(graylog): add graylog 2025-04-02 07:01:40 -05:00
redbeardymcgee
e751cb6580 fix(templates): better network template 2025-04-02 07:01:23 -05:00
redbeardymcgee
49221c4b58 fix(postiz): remove extra env secret 2025-04-02 07:00:49 -05:00
redbeardymcgee
ec33e116a1 fix(postiz): correct password 2025-04-01 21:46:07 -05:00
redbeardymcgee
ce3d7b2438 feat(postiz): add Postiz social media manager 2025-04-01 19:25:15 -05:00
redbeardymcgee
8d3d21476e fix(termix): use secret for SALT 2025-04-01 11:34:56 -05:00
redbeardymcgee
2230e91693 feat(termix): add termix ssh terminal manager 2025-04-01 08:23:40 -05:00
redbeardymcgee
1d84da078c feat(forgejo): add forgejo git forge 2025-03-31 20:17:24 -05:00
redbeardymcgee
0e5e90214f fix(filestash): editor launch command 2025-03-31 19:40:50 -05:00
redbeardymcgee
17071fe229 feat(filestash): add filestash 2025-03-31 18:34:53 -05:00
redbeardymcgee
7225857391 fix(librenms): fix dependency resolution 2025-03-30 08:18:00 -05:00
redbeardymcgee
96ac7bbfac chore(readme): link to ubuntu doc 2025-03-29 10:04:19 -05:00
redbeardymcgee
d57b085d52 chore(readme): check LibreNMS 2025-03-29 09:46:40 -05:00
redbeardymcgee
0448ff83a1 chore(librenms): update readme with known issues 2025-03-29 09:45:00 -05:00
redbeardymcgee
07794e42fa fix(librenms): correct typo in mariadb env 2025-03-29 09:44:41 -05:00
redbeardymcgee
7a69dc54d8 fix(librenms): correct host and snmp community 2025-03-29 09:44:16 -05:00
redbeardymcgee
4d5815e34d fix(librenms): correct dependency names 2025-03-29 09:43:53 -05:00
redbeardymcgee
a94ef488a6 fix(librenms): add deps to start all containers 2025-03-28 18:24:38 -05:00
redbeardymcgee
c5945259e0 feat(librenms): add LibreNMS 2025-03-28 18:17:31 -05:00
EphemeralDev
c34bb5d942
fix(ubuntu): workaround missing network-online.target 2025-03-23 09:38:31 -05:00
redbeardymcgee
ed5aa52966 fix(glance): include recommended dir structure 2025-03-15 11:42:04 -05:00
redbeardymcgee
b75b3c4bb1 feat(glance): add Glance dashboard 2025-03-15 10:20:39 -05:00
redbeardymcgee
8e18a4b949 feat(openspeedtest): add openspeedtest server 2025-03-12 14:40:22 -05:00
267 changed files with 2701 additions and 221 deletions

View file

@ -26,7 +26,9 @@ under the same user permissions as yourself, from within your own `$HOME`.
> [!NOTE] > [!NOTE]
> It is recommended to create another user specifically for running these > It is recommended to create another user specifically for running these
> containers, but it is not strictly required. Details for setting up a system > containers, but it is not strictly required. Details for setting up a system
> from scratch are located in [AlmaLinux.md](./AlmaLinux.md). > from scratch are located in [AlmaLinux.md](./AlmaLinux.md) or
> [Ubuntu.md](./Ubuntu.md
)
## Getting started ## Getting started
@ -140,75 +142,76 @@ Navigate to `http://localhost:9000` in your browser.
I'm working on new quadlets every day. This is a list of all of the containers I'm working on new quadlets every day. This is a list of all of the containers
that I intend to add to this repository. It is still growing, and I welcome that I intend to add to this repository. It is still growing, and I welcome
[pull requests](https://github.com/redbeardymcgee/podbox/pulls). [pull requests](https://git.mcgee.red/redbeardymcgee/podbox/pulls).
- [x] [Actual](https://actualbudget.github.io/docs/) - [x] [Actual](https://actualbudget.github.io/docs/)
- [x] [AdGuard](https://adguard.com) - [x] [AdGuard](https://adguard.com)
- [ ] [Apprise](https://github.com/caronc/apprise) - [x] [Apprise](https://github.com/caronc/apprise)
- [ ] [ArgoCD](https://github.com/argoproj/argo-cd) - [ ] [ArgoCD](https://github.com/argoproj/argo-cd)
- [x] [Audiobookshelf](https://www.audiobookshelf.org/) - [x] [Audiobookshelf](https://www.audiobookshelf.org/)
- [ ] [Authelia](https://www.authelia.com/) - [ ] [Authelia](https://www.authelia.com/)
- [ ] [Authentik](https://goauthentik.io/) - [ ] [Authentik](https://goauthentik.io/)
- [ ] [betanin](https://github.com/sentriz/betanin) - [x] [betanin](https://github.com/sentriz/betanin)
- [ ] [Bigcapital](https://bigcapital.app/)
- [ ] [Bitwarden](https://bitwarden.com/)
- [x] [Blinko](https://blinko.mintlify.app/introduction) - [x] [Blinko](https://blinko.mintlify.app/introduction)
- [x] [booktree](https://github.com/myxdvz/booktree) - [x] [booktree](https://github.com/myxdvz/booktree)
- [x] [Caddy](https://caddyserver.com) # Socket activation requires newer `caddy` and `podman` - [x] [Caddy](https://caddyserver.com) # Socket activation requires newer `caddy` and `podman`
- [x] [Calibre](https://github.com/linuxserver/docker-calibre) - [x] [Calibre](https://github.com/linuxserver/docker-calibre)
- [x] [Calibre-web](https://github.com/janeczku/calibre-web) - [x] [Calibre-web](https://github.com/janeczku/calibre-web)
- [x] [ChartDB](https://chartdb.io/) - [x] [ChartDB](https://chartdb.io/)
- [ ] [Checkmate](https://github.com/bluewave-labs/checkmate) - [x] [Checkmate](https://github.com/bluewave-labs/checkmate)
- [ ] [Code::Stats](https://codestats.net/)
- [x] [dash.](https://getdashdot.com/) - [x] [dash.](https://getdashdot.com/)
- [x] [Dashy](https://dashy.to) - [x] [Dashy](https://dashy.to)
- [ ] [Dittofeed](https://www.dittofeed.com)
- [ ] [Duplicacy](https://duplicacy.com/) - [ ] [Duplicacy](https://duplicacy.com/)
- [ ] [Duplicati](https://duplicati.com/) - [ ] [Duplicati](https://duplicati.com/)
- [ ] [EmulatorJS](https://emulatorjs.org/)
- [x] [Filebrowser](https://filebrowser.org/) - [x] [Filebrowser](https://filebrowser.org/)
- [x] [Filestash](https://filestash.app)
- [x] [FiveFilters](https://www.fivefilters.org/) - [x] [FiveFilters](https://www.fivefilters.org/)
- [x] [Forgejo](https://forgejo.org)
- [x] [Foundry VTT](https://foundryvtt.com) - [x] [Foundry VTT](https://foundryvtt.com)
- [x] [FreshRSS](https://www.freshrss.org/) - [x] [FreshRSS](https://www.freshrss.org/)
- [ ] [Gaseous](https://github.com/gaseous-project/gaseous-server) - [x] [Gaseous](https://github.com/gaseous-project/gaseous-server)
- [x] [Glance](https://github.com/glanceapp/glance)
- [x] [Glances](https://nicolargo.github.io/glances/) - [x] [Glances](https://nicolargo.github.io/glances/)
- [ ] [glueforward](https://github.com/GeoffreyCoulaud/glueforward) - [x] [glueforward](https://github.com/GeoffreyCoulaud/glueforward)
- [x] [gluetun](https://github.com/qdm12/gluetun) - [x] [gluetun](https://github.com/qdm12/gluetun)
- [ ] [Graphite](https://graphiteapp.org/) - [x] [Graphite](https://graphiteapp.org/)
- [ ] [Healthchecks](https://healthchecks.io/) - [x] [Graylog](https://graylog.org)
- [x] [Healthchecks](https://healthchecks.io/)
- [x] [hoarder](https://hoarder.app/) - [x] [hoarder](https://hoarder.app/)
- [x] [Homarr](https://homarr.dev/) - [x] [Homarr](https://homarr.dev/)
- [ ] [Homepage](https://gethomepage.dev/) - [x] [Homepage](https://gethomepage.dev/)
- [ ] [Immich](https://immich.app/) - [ ] [Immich](https://immich.app/)
- [x] [IT-Tools](https://it-tools.tech/) - [x] [IT-Tools](https://it-tools.tech/)
- [x] [Joplin](https://joplinapp.org/) - [x] [Joplin](https://joplinapp.org/)
- [x] [Kavita](https://kavitareader.com) - [x] [Kavita](https://kavitareader.com)
- [ ] [Keycloak](https://www.keycloak.org) - [ ] [Keycloak](https://www.keycloak.org)
- [x] [Kibitzr](https://kibitzr.github.io/) - [x] [Kibitzr](https://kibitzr.github.io/)
- [ ] [Komga](https://komga.org/) - [x] [Komga](https://komga.org/)
- [ ] [LazyLibrarian](https://lazylibrarian.gitlab.io/) - [x] [LazyLibrarian](https://lazylibrarian.gitlab.io/)
- [x] [Leantime](https://leantime.io)
- [x] [LibreNMS](https://librenms.org)
- [x] [librespeed](https://librespeed.org) - [x] [librespeed](https://librespeed.org)
- [x] [Linkwarden](https://linkwarden.app/) - [x] [Linkwarden](https://linkwarden.app/)
- [x] [Lounge](https://thelounge.chat) - [x] [Lounge](https://thelounge.chat)
- [x] [Matrix](https://matrix.org/) - [x] [Matrix](https://matrix.org/)
- [ ] [Maxun](https://github.com/getmaxun/maxun) - [x] [Maxun](https://github.com/getmaxun/maxun)
- [x] [Mealie](https://mealie.io/) - [x] [Mealie](https://mealie.io/)
- [x] [Memos](https://usememos.com) - [x] [Memos](https://usememos.com)
- [ ] [Miniflux](https://miniflux.app/) - [x] [Miniflux](https://miniflux.app/)
- [x] [MinIO](https://min.io) - [x] [MinIO](https://min.io)
- [ ] [n8n](https://n8n.io/) - [x] [n8n](https://n8n.io/)
- [x] [Nebula](https://github.com/slackhq/nebula) - [x] [Nebula](https://github.com/slackhq/nebula)
- [ ] [Netbird](https://netbird.io/) - [ ] [Netbird](https://netbird.io/)
- [x] [netboot.xyz](https://netboot.xyz) - [x] [netboot.xyz](https://netboot.xyz)
- [x] [Netdata](https://www.netdata.cloud/) - [x] [Netdata](https://www.netdata.cloud/)
- [ ] [Note Mark](https://github.com/enchant97/note-mark) - [ ] [Note Mark](https://github.com/enchant97/note-mark)
- [ ] [Notesnook](https://github.com/streetwriters/notesnook-sync-server) - [ ] [Notesnook](https://github.com/streetwriters/notesnook-sync-server)
- [ ] [ntop](https://www.ntop.org/) - [x] [OpenObserve](https://openobserve.ai)
- [ ] [OpenNMS](https://www.opennms.org/) - [x] [OpenSpeedTest](https://openspeedtest.com)
- [ ] [PiHole](https://pi-hole.net/) - [x] [PiHole](https://pi-hole.net/)
- [ ] [Pocket ID](https://github.com/stonith404/pocket-id) - [x] [Pocket ID](https://github.com/stonith404/pocket-id)
- [ ] [Pod Arcade](https://www.pod-arcade.com/) - [ ] [Pod Arcade](https://www.pod-arcade.com/)
- [ ] [Postiz](https://postiz.com/) - [x] [Postiz](https://postiz.com/)
- [x] [Prometheus](https://prometheus.io) - [x] [Prometheus](https://prometheus.io)
- [x] [protonmail-bridge-docker](https://github.com/shenxn/protonmail-bridge-docker) - [x] [protonmail-bridge-docker](https://github.com/shenxn/protonmail-bridge-docker)
- [x] [Prowlarr](https://prowlarr.com) - [x] [Prowlarr](https://prowlarr.com)
@ -216,21 +219,23 @@ that I intend to add to this repository. It is still growing, and I welcome
- [x] [qBittorrent](https://qbittorrent.org) - [x] [qBittorrent](https://qbittorrent.org)
- [x] [qbittorrent-port-forward-gluetun-server](https://github.com/mjmeli/qbittorrent-port-forward-gluetun-server) - [x] [qbittorrent-port-forward-gluetun-server](https://github.com/mjmeli/qbittorrent-port-forward-gluetun-server)
- [x] [Radarr](https://radarr.video) - [x] [Radarr](https://radarr.video)
- [ ] [RomM](https://romm.app/) - [x] [RomM](https://romm.app/)
- [ ] [Seafile](https://www.seafile.com) - [ ] [Seafile](https://www.seafile.com)
- [ ] [Shiori](https://github.com/go-shiori/shiori) - [ ] [Shiori](https://github.com/go-shiori/shiori)
- [ ] [SimpleX](https://simplex.chat/) - [ ] [SimpleX](https://simplex.chat/)
- [x] [Snowflake](https://snowflake.torproject.org/) - [x] [Snowflake](https://snowflake.torproject.org/)
- [ ] [solidtime](https://docs.solidtime.io/self-hosting/intro) - [ ] [solidtime](https://docs.solidtime.io/self-hosting/intro)
- [x] [Sonarr](https://sonarr.tv) - [x] [Sonarr](https://sonarr.tv)
- [x] [Speedtest Tracker](https://speedtest-tracker.dev)
- [x] [Stirling PDF](https://stirlingpdf.io) - [x] [Stirling PDF](https://stirlingpdf.io)
- [ ] [Supervisord](http://supervisord.org/) - [x] [syslog-ng](https://syslog-ng.github.io/)
- [x] [Tandoor](https://github.com/TandoorRecipes/recipes) - [x] [Tandoor](https://github.com/TandoorRecipes/recipes)
- [x] [traggo](https://traggo.net) - [x] [traggo](https://traggo.net)
- [x] [Termix](https://github.com/LukeGus/Termix)
- [ ] [Ubooquity](https://vaemendis.net/ubooquity/) - [ ] [Ubooquity](https://vaemendis.net/ubooquity/)
- [ ] [Umami](https://umami.is/) - [ ] [Umami](https://umami.is/)
- [ ] [UrBackup](https://urbackup.org) - [ ] [UrBackup](https://urbackup.org)
- [ ] [Vikunja](https://vikunja.io) - [x] [Vikunja](https://vikunja.io)
- [ ] [Wazuh](https://wazuh.com/) - [ ] [Wazuh](https://wazuh.com/)
- [ ] [wiki.js](https://js.wiki) - [ ] [wiki.js](https://js.wiki)
- [ ] [wger](https://wger.de/) - [ ] [wger](https://wger.de/)

View file

@ -137,3 +137,42 @@ podman system migrate
systemctl --user enable --now podman-auto-update systemctl --user enable --now podman-auto-update
exit exit
``` ```
## Podman fails autostart
In Podman < 5.3 containers may fail to autostart because user level units cannot depend on system level units (in this case `network-online.target`)
Podman >= 5.3 should ship with a workaround user unit that can be used `podman-user-wait-network-online.service`, use that instead of the fix below.
See [this github issue](https://github.com/containers/podman/issues/22197) for workarounds, the workaround below is what worked for me. The google.com ping can be replaced with your preferred (reachable) ip/host
To fix this, create the following
```bash
# ~/.config/systemd/user/network-online.service
[Unit]
Description=User-level proxy to system-level network-online.target
[Service]
Type=oneshot
ExecStart=sh -c 'until ping -c 1 google.com; do sleep 5; done'
[Install]
WantedBy=default.target
```
```bash
# ~/.config/systemd/user/network-online.target
[Unit]
Description=User-level network-online.target
Requires=network-online.service
Wants=network-online.service
After=network-online.service
```
Then enable the service `systemctl --user enable network-online.service`
In quadlets add the following:
```bash
[Unit]
After=network-online.target
```

View file

@ -1,3 +1,3 @@
# Quadlets ## Quadlets
Quadlets go in `~/.config/containers/systemd`. Quadlets go in `~/.config/containers/systemd`.

View file

@ -1,5 +1,5 @@
[Unit] [Unit]
Description=Budget management Description=Actual budget management
[Service] [Service]
@ -12,6 +12,8 @@ WantedBy=default.target
[Container] [Container]
Image=docker.io/actualbudget/actual-server:latest Image=docker.io/actualbudget/actual-server:latest
ContainerName=actual ContainerName=actual
Network=actual.network
HostName=actual HostName=actual
Volume=actual-data:/data Volume=actual-data:/data

View file

@ -0,0 +1 @@
[Network]

View file

@ -11,8 +11,9 @@ WantedBy=default.target
[Container] [Container]
Image=docker.io/adguard/adguardhome:latest Image=docker.io/adguard/adguardhome:latest
ContainerName=adguard ContainerName=adguard
HostName=adguard
Network=adguard.network
HostName=adguard
PublishPort=53:53/tcp PublishPort=53:53/tcp
PublishPort=53:53/udp PublishPort=53:53/udp
PublishPort=784:784/udp PublishPort=784:784/udp
@ -21,6 +22,6 @@ PublishPort=3000:3000/tcp
PublishPort=8844:80/tcp PublishPort=8844:80/tcp
PublishPort=8443:443/tcp PublishPort=8443:443/tcp
Volume=adguard-config:/opt/adguardhome/work:z Volume=adguard-config:/opt/adguardhome/work
Volume=adguard-work:/opt/adguardhome/conf:z Volume=adguard-work:/opt/adguardhome/conf
Volume=/var/log/AdGuardHome.log:/var/log/AdGuardHome.log:z Volume=/var/log/AdGuardHome.log:/var/log/AdGuardHome.log

View file

@ -0,0 +1 @@
[Network]

View file

@ -0,0 +1,25 @@
[Unit]
Description=Apprise API
[Service]
Restart=on-failure
TimeoutStartSec=900
[Install]
WantedBy=default.target
[Container]
Image=docker.io/caronc/apprise:latest
ContainerName=apprise
AutoUpdate=registry
Network=apprise.network
HostName=apprise
PublishPort=8000:8000
Volume=apprise-config:/config
Volume=apprise-plugin:/plugin
Volume=apprise-attahc:/attahc
Environment=APPRISE_STATEFUL_MODE=simple
Environment=APPRISE_WORKER_COUNT=1

View file

@ -0,0 +1,6 @@
[Unit]
Description=Apprise network
[Network]
NetworkName=apprise

View file

@ -0,0 +1,5 @@
[Volume]
VolumeName=apprise-config
VolumeName=apprise-plugin
VolumeName=apprise-attach

View file

@ -11,13 +11,11 @@ WantedBy=default.target
[Container] [Container]
Image=docker.io/advplyr/audiobookshelf:latest Image=docker.io/advplyr/audiobookshelf:latest
ContainerName=audiobookshelf ContainerName=audiobookshelf
HostName=audiobookshelf
Network=audiobookshelf.network
HostName=audiobookshelf
PublishPort=13378:80 PublishPort=13378:80
Volume=audiobookshelf-config:/metadata:z Volume=audiobookshelf-config:/metadata
Volume=audiobookshelf-metadata:/config:z Volume=audiobookshelf-metadata:/config
Volume=audiobookshelf-audiobooks:/audiobooks:z Volume=audiobookshelf-audiobooks:/audiobooks
Environment=AUDIOBOOKSHELF_UID=USER_UID_HERE
Environment=AUDIOBOOKSHELF_GID=USER_GID_HERE

View file

@ -0,0 +1 @@
[Network]

View file

@ -0,0 +1,24 @@
[Unit]
Description=betanin
[Service]
Restart=on-failure
TimeoutStartSec=900
[Install]
WantedBy=default.target
[Container]
Image=docker.io/sentriz/betanin
ContainerName=betanin
AutoUpdate=registry
Network=betanin.network
HostName=betanin
PublishPort=9393:9393
Volume=betanin-data:/b/.local/share/betanin
Volume=betanin-config:/b/.local/share/config
Volume=betanin-beets:/b/.local/share/beets
Volume=/path/to/music:/music
Volume=/path/to/downloads:/downloads

View file

@ -0,0 +1,6 @@
[Unit]
Description=betanin network
[Network]
NetworkName=betanin

View file

@ -0,0 +1,5 @@
[Volume]
VolumeName=betanin-data
VolumeName=betanin-config
VolumeName=betanin-beets

View file

@ -13,6 +13,7 @@ WantedBy=default.target
Image=docker.io/postgres Image=docker.io/postgres
ContainerName=blinko-db ContainerName=blinko-db
Network=blinko.network
HostName=blinko-db HostName=blinko-db
PublishPort=5435:5432 PublishPort=5435:5432

View file

@ -14,6 +14,7 @@ WantedBy=default.target
Image=docker.io/blinkospace/blinko Image=docker.io/blinkospace/blinko
ContainerName=blinko ContainerName=blinko
Network=blinko.network
HostName=blinko HostName=blinko
PublishPort=1111:1111 PublishPort=1111:1111

View file

@ -0,0 +1 @@
[Network]

View file

@ -1,3 +1,4 @@
[Volume] [Volume]
VolumeName=blinko-data VolumeName=blinko-data
VolumeName=blinko-db

View file

@ -1,3 +0,0 @@
[Volume]
VolumeName=blinko-db

View file

@ -1,7 +1,6 @@
[Unit] [Unit]
Description=Reverse proxy Description=Reverse proxy
[Service] [Service]
Restart=on-failure Restart=on-failure
@ -11,8 +10,9 @@ WantedBy=default.target
[Container] [Container]
Image=caddy.build Image=caddy.build
ContainerName=caddy ContainerName=caddy
HostName=caddy
Network=reverse-proxy.network
HostName=caddy
PublishPort=80:80 PublishPort=80:80
PublishPort=443:443 PublishPort=443:443
PublishPort=443:443/udp PublishPort=443:443/udp

View file

@ -1,2 +1,3 @@
[Volume] [Volume]
VolumeName=caddy-config VolumeName=caddy-config
VolumeName=caddy-data

View file

@ -1,2 +0,0 @@
[Volume]
VolumeName=caddy-data

View file

@ -0,0 +1 @@
[Network]

View file

@ -11,8 +11,9 @@ WantedBy=default.target
[Container] [Container]
Image=lscr.io/linuxserver/calibre:latest Image=lscr.io/linuxserver/calibre:latest
ContainerName=calibre ContainerName=calibre
HostName=calibre
Network=calibre.network
HostName=calibre
PublishPort=8080 PublishPort=8080
Volume=calibre-config:/config Volume=calibre-config:/config

View file

@ -0,0 +1 @@
[Network]

View file

@ -12,6 +12,7 @@ WantedBy=default.target
Image=ghcr.io/chartdb/chartdb Image=ghcr.io/chartdb/chartdb
ContainerName=chartdb ContainerName=chartdb
Network=chartdb.network
HostName=chartdb HostName=chartdb
PublishPort=8080:80 PublishPort=8080:80

View file

@ -0,0 +1 @@
[Network]

View file

@ -0,0 +1,22 @@
[Unit]
Description=Checkmate mongodb
[Service]
Restart=on-failure
TimeoutStartSec=900
[Install]
WantedBy=default.target
[Container]
Image=docker.io/bluewaveuptime/uptime_database_mongo:latest
ContainerName=checkmate-mongodb
AutoUpdate=registry
Network=checkmate.network
HostName=checkmate-mongodb
PublishPort=27017:27017
Volume=checkmate-mongodb:/data/db
Exec=mongod --quiet

View file

@ -0,0 +1,20 @@
[Unit]
Description=Checkmate Redis
[Service]
Restart=on-failure
TimeoutStartSec=900
[Install]
WantedBy=default.target
[Container]
Image=docker.io/bluewaveuptime/uptime_redis:latest
ContainerName=checkmate-redis
AutoUpdate=registry
Network=checkmate.network
HostName=checkmate-redis
PublishPort=6379:6379
Volume=checkmate-redis:/data

View file

@ -0,0 +1,27 @@
[Unit]
Description=Checkmate server
Requires=checkmate-mongodb.service
Requires=checkmate-redis.service
After=checkmate-mongodb.service
After=checkmate-redis.service
[Service]
Restart=on-failure
TimeoutStartSec=900
[Install]
WantedBy=default.target
[Container]
Image=docker.io/bluewaveuptime/uptime_server:latest
ContainerName=checkmate-server
AutoUpdate=registry
Network=checkmate.network
HostName=checkmate-server
PublishPort=5000:5000
Volume=%t/podman/podman.sock:/run/user/1000/podman/podman.sock:ro
Environment=REDIS_HOST=checkmate-redis
Environment=DB_CONNECTION_STRING=mongodb://checkmate-mongodb:27017/uptime_db

View file

@ -0,0 +1,23 @@
[Unit]
Description=Checkmate
Requires=checkmate-server.service
After=checkmate-server.service
[Service]
Restart=on-failure
TimeoutStartSec=900
[Install]
WantedBy=default.target
[Container]
Image=docker.io/bluewaveuptime/uptime_client:latest
ContainerName=checkmate
AutoUpdate=registry
Network=checkmate.network
HostName=checkmate
PublishPort=80:80
PublishPort=443:443
Environment=UPTIME_APP_API_BASE_URL=http://localhost:5000/api/v1

View file

@ -0,0 +1,6 @@
[Unit]
Description=Checkmate network
[Network]
NetworkName=checkmate

View file

@ -0,0 +1,4 @@
[Volume]
VolumeName=checkmate-mongodb
VolumeName=checkmate-redis

View file

@ -13,7 +13,7 @@ Image=docker.io/mauricenino/dashdot:nvidia
ContainerName=dashdot-nvidia ContainerName=dashdot-nvidia
AutoUpdate=registry AutoUpdate=registry
Network= Network=dashdot.network
HostName=dashdot HostName=dashdot
PublishPort=3001:3001 PublishPort=3001:3001

View file

@ -13,7 +13,7 @@ Image=docker.io/mauricenino/dashdot
ContainerName=dashdot ContainerName=dashdot
AutoUpdate=registry AutoUpdate=registry
Network= Network=dashdot.network
HostName=dashdot HostName=dashdot
PublishPort=3001:3001 PublishPort=3001:3001

View file

@ -0,0 +1 @@
[Network]

View file

@ -12,10 +12,10 @@ WantedBy=default.target
[Container] [Container]
Image=docker.io/lissy93/dashy:$dashy_version Image=docker.io/lissy93/dashy:$dashy_version
ContainerName=dashy ContainerName=dashy
HostName=dashy
AutoUpdate=registry AutoUpdate=registry
Network= Network=dashy.network
HostName=dashy
Volume=./user-data:/app/user-data Volume=./user-data:/app/user-data

View file

@ -0,0 +1 @@
[Network]

View file

@ -12,6 +12,9 @@ WantedBy=multi-user.target default.target
Image=docker.io/hurlenko/filebrowser:latest Image=docker.io/hurlenko/filebrowser:latest
ContainerName=filebrowser ContainerName=filebrowser
Network=filebrowser.network
Hostname=filebrowser
Volume=/path/to/what/you/want/to/share:/data:z Volume=/path/to/what/you/want/to/share:/data:z
Volume=fb-config:/config:z Volume=fb-config:/config:z
Volume=fb-branding:/branding:z Volume=fb-branding:/branding:z

View file

@ -0,0 +1 @@
[Network]

View file

@ -0,0 +1,23 @@
[Unit]
Description=Filestash wopi
[Service]
Restart=on-failure
TimeoutStartSec=900
[Install]
WantedBy=default.target
[Container]
Image=docker.io/collabora/code:24.04.10.2.1
ContainerName=filestash-wopi
AutoUpdate=registry
Network=filestash.network
HostName=filestash-wopi
PublishPort=9980:9980
Environment=extra_params=--o:ssl.enable=false
Environment=aliasgroup1="https://.*:443"
Exec=bash -c '/start-collabora-online.sh cool'

View file

@ -0,0 +1,28 @@
[Unit]
Description=Filestash
Wants=filestash-wopi.service
[Service]
Restart=on-failure
TimeoutStartSec=900
[Install]
WantedBy=default.target
[Container]
Image=docker.io/machines/filestash:latest
ContainerName=filestash
AutoUpdate=registry
Network=filestash.network
HostName=filestash
PublishPort=8334:8334
Volume=filestash:/app/data/state
Environment=APPLICATION_URL=https://filestash.example.com
Environment=CANARY=true
Environment=OFFICE_URL=http://filestash-wopi:9980
Environment=OFFICE_FILESTASH_URL=http://filestash:8334
Environment=OFFICE_REWRITE_URL=http://127.0.0.1:9980

View file

@ -0,0 +1 @@
[Network]

View file

@ -0,0 +1,2 @@
[Volume]
VolumeName=forgejo-data

View file

@ -0,0 +1,22 @@
[Unit]
Description=Forgejo
After=
[Service]
Restart=on-failure
TimeoutStartSec=900
[Install]
WantedBy=default.target
[Container]
Image=codeberg.org/forgejo/forgejo:10
ContainerName=forgejo
AutoUpdate=registry
Network=forgejo.network
HostName=forgejo
PublishPort=222:22
PublishPort=3000:3000
Volume=forgejo-data:/data

View file

@ -0,0 +1 @@
[Network]

View file

@ -11,19 +11,19 @@ WantedBy=default.target
[Container] [Container]
Image=docker.io/felddy/foundryvtt:release Image=docker.io/felddy/foundryvtt:release
ContainerName=foundryvtt ContainerName=foundryvtt
HostName=foundryvtt AutoUpdate=registry
Network=foundryvtt.network
HostName=foundryvtt
Volume=foundryvtt-data:/data Volume=foundryvtt-data:/data
PublishPort=30000:30000 PublishPort=30000:30000
Environment=TIMEZONE= Environment=TIMEZONE=Etc/UTC
Environment=FOUNDRY_UID= Secret=foundry-password,type=env,target=FOUNDRY_PASSWORD
Environment=FOUNDRY_GID=
Environment=FOUNDRY_PASSWORD=
Environment=FOUNDRY_USERNAME= Environment=FOUNDRY_USERNAME=
Environment=FOUNDRY_ADMIN_KEY= Secret=foundry-admin-key,type=env,target=FOUNDRY_ADMIN_KEY
Environment=FOUNDRY_LICENSE_KEY=XXXX-XXXX-XXXX-XXXX-XXXX-XXXX Secret=foundry-license-key,type=env,target=FOUNDRY_LICENSE_KEY=XXXX-XXXX-XXXX-XXXX-XXXX-XXXX
Environment=FOUNDRY_HOT_RELOAD=true Environment=FOUNDRY_HOT_RELOAD=false
Environment=CONTAINER_PRESERVE_CONFIG=true Environment=CONTAINER_PRESERVE_CONFIG=true
Environment=CONTAINER_CACHE="/data/container_cache" Environment=CONTAINER_CACHE="/data/container_cache"

View file

@ -0,0 +1 @@
[Network]

View file

@ -11,9 +11,9 @@ WantedBy=default.target
[Container] [Container]
Image=docker.io/heussd/fivefilters-full-text-rss:latest Image=docker.io/heussd/fivefilters-full-text-rss:latest
ContainerName=fivefilters ContainerName=fivefilters
HostName=fivefilters
Network=freshrss.network Network=freshrss.network
HostName=fivefilters
PublishPort=5000:80 PublishPort=5000:80
Environment=FTR_ADMIN_PASSWORD=XXXXXXXX Secret=ftr-admin-password,type=env,target=FTR_ADMIN_PASSWORD

View file

@ -1,5 +1,6 @@
[Unit] [Unit]
Description=FreshRSS Quadlet Description=FreshRSS Quadlet
Requires=fivefilters.service
After=fivefilters.service After=fivefilters.service
[Service] [Service]
@ -12,13 +13,11 @@ WantedBy=default.target
[Container] [Container]
Image=docker.io/linuxserver/freshrss:latest Image=docker.io/linuxserver/freshrss:latest
ContainerName=freshrss ContainerName=freshrss
HostName=freshrss
Network=freshrss.network Network=freshrss.network
HostName=freshrss
PublishPort=4422:80 PublishPort=4422:80
Volume=freshrss-config:/config:z Volume=freshrss-config:/config
Environment=PUID=1001 Environment=TZ=Etc/UTC
Environment=PGID=1001
Environment=TZ=Europe/London

View file

@ -1,9 +1 @@
[Network] [Network]
Subnet=10.10.10.0/24
Gateway=10.10.10.1
Label=app=freshrss
Driver=pasta

View file

@ -0,0 +1,23 @@
[Unit]
Description=Gaseous MariaDB
[Service]
Restart=on-failure
TimeoutStartSec=900
[Install]
WantedBy=default.target
[Container]
Image=docker.io/mariadb:latest
ContainerName=gaseous-mariadb
AutoUpdate=registry
Network=gaseous.network
HostName=gaseous-mariadb
Volume=gaseous-mariadb:/var/lib/mysql
Environment=MARIADB_ROOT_PASSWORD=gaseous
Environment=MARIADB_USER=gaseous
Environment=MARIADB_PASSWORD=gaseous

View file

@ -0,0 +1,29 @@
[Unit]
Description=Gaseous ROM manager
Requires=gaseous-mariadb.service
After=gaseous-mariadb.service
[Service]
Restart=on-failure
TimeoutStartSec=900
[Install]
WantedBy=default.target
[Container]
Image=docker.io/gaseousgames/gaseousserver:latest
ContainerName=gaseous
AutoUpdate=registry
Network=gaseous.network
HostName=gaseous
PublishPort=5198:80
Volume=gaseous:/root/.gaseous-server
Environment=TZ=Etc/UTC
Environment=dbhost=gsdb
Environment=dbuser=root
Environment=dbpass=gaseous
Environment=igdbclientid=
Environment=igdbclientsecret=

View file

@ -0,0 +1,6 @@
[Unit]
Description=Gaseous ROMs network
[Network]
NetworkName=gaseous

View file

@ -0,0 +1,4 @@
[Volume]
VolumeName=gaseous
VolumeName=gaseous-mariadb

View file

View file

@ -0,0 +1,12 @@
server:
assets-path: /app/assets
theme:
# Note: assets are cached by the browser, changes to the CSS file
# will not be reflected until the browser cache is cleared (Ctrl+F5)
custom-css-file: /assets/user.css
pages:
# It's not necessary to create a new file for each page and include it, you can simply
# put its contents here, though multiple pages are easier to manage when separated
!include: home.yml

View file

@ -0,0 +1,88 @@
- name: Home
# Optionally, if you only have a single page you can hide the desktop navigation for a cleaner look
# hide-desktop-navigation: true
columns:
- size: small
widgets:
- type: calendar
first-day-of-week: monday
- type: rss
limit: 10
collapse-after: 3
cache: 12h
feeds:
- url: https://selfh.st/rss/
title: selfh.st
- url: https://ciechanow.ski/atom.xml
- url: https://www.joshwcomeau.com/rss.xml
title: Josh Comeau
- url: https://samwho.dev/rss.xml
- url: https://ishadeed.com/feed.xml
title: Ahmad Shadeed
- type: twitch-channels
channels:
- theprimeagen
- j_blow
- piratesoftware
- cohhcarnage
- christitustech
- EJ_SA
- size: full
widgets:
- type: group
widgets:
- type: hacker-news
- type: lobsters
- type: videos
channels:
- UCXuqSBlHAE6Xw-yeJA0Tunw # Linus Tech Tips
- UCR-DXc1voovS8nhAvccRZhg # Jeff Geerling
- UCsBjURrPoezykLs9EqgamOA # Fireship
- UCBJycsmduvYEL83R_U4JriQ # Marques Brownlee
- UCHnyfMqiRRG1u-2MsSQLbXA # Veritasium
- type: group
widgets:
- type: reddit
subreddit: technology
show-thumbnails: true
- type: reddit
subreddit: selfhosted
show-thumbnails: true
- size: small
widgets:
- type: weather
location: London, United Kingdom
units: metric # alternatively "imperial"
hour-format: 12h # alternatively "24h"
# Optionally hide the location from being displayed in the widget
# hide-location: true
- type: markets
markets:
- symbol: SPY
name: S&P 500
- symbol: BTC-USD
name: Bitcoin
- symbol: NVDA
name: NVIDIA
- symbol: AAPL
name: Apple
- symbol: MSFT
name: Microsoft
- type: releases
cache: 1d
# Without authentication the Github API allows for up to 60 requests per hour. You can create a
# read-only token from your Github account settings and use it here to increase the limit.
# token: ...
repositories:
- glanceapp/glance
- go-gitea/gitea
- immich-app/immich
- syncthing/syncthing

View file

@ -0,0 +1,21 @@
[Unit]
Description=Glance dashboard
[Service]
Restart=on-failure
TimeoutStartSec=900
[Install]
WantedBy=default.target
[Container]
Image=docker.io/glanceapp/glance
ContainerName=glance
AutoUpdate=registry
Network=glance.network
HostName=glance
PublishPort=8080:8080
Volume=glance-config:/app/config

View file

@ -0,0 +1,3 @@
# Variables defined here will be available to use anywhere in the config with the syntax ${MY_SECRET_TOKEN}
# Note: making changes to this file requires re-running docker compose up
MY_SECRET_TOKEN=123456

View file

@ -0,0 +1,2 @@
[Volume]
VolumeName=glance-config

View file

@ -11,9 +11,11 @@ WantedBy=default.target
[Container] [Container]
Image=docker.io/nicolargo/glances:$version_tag Image=docker.io/nicolargo/glances:$version_tag
ContainerName=glances ContainerName=glances
HostName=glances
AutoUpdate=registry AutoUpdate=registry
Network=glances.network
HostName=glances
Volume=%t/podman/podman.sock:/run/user/1000/podman/podman.sock:ro Volume=%t/podman/podman.sock:/run/user/1000/podman/podman.sock:ro
Volume=/etc/os-release:/etc/os-release:ro Volume=/etc/os-release:/etc/os-release:ro
Volume=./glances.conf:/glances/conf/glances.conf Volume=./glances.conf:/glances/conf/glances.conf

View file

@ -0,0 +1 @@
[Network]

View file

@ -11,7 +11,7 @@ TimeoutStartSec=900
WantedBy=default.target WantedBy=default.target
[Container] [Container]
Image=docker.io/qmcgaw/gluetun:$gluetun_version Image=docker.io/qmcgaw/gluetun
ContainerName=gluetun ContainerName=gluetun
HostName=gluetun HostName=gluetun
AutoUpdate=registry AutoUpdate=registry
@ -20,7 +20,7 @@ AddDevice=/dev/net/tun:/dev/net/tun
Volume=./config.toml:/gluetun/auth/config.toml Volume=./config.toml:/gluetun/auth/config.toml
Environment=TZ=$timezone Environment=TZ=Etc/UTC
Environment=UPDATER_PERIOD=24h Environment=UPDATER_PERIOD=24h
Environment=UPDATER_VPN_SERVICE_PROVIDERS=protonvpn Environment=UPDATER_VPN_SERVICE_PROVIDERS=protonvpn
Environment=VPN_SERVICE_PROVIDER=protonvpn Environment=VPN_SERVICE_PROVIDER=protonvpn

View file

@ -0,0 +1,26 @@
[Unit]
Description=Graphite monitoring
[Service]
Restart=on-failure
TimeoutStartSec=900
[Install]
WantedBy=default.target
[Container]
Image=docker.io/graphiteapp/graphite-statsd
ContainerName=graphite
AutoUpdate=registry
Network=graphite.network
HostName=graphite
PublishPort=80:80
PublishPort=2003-2004:2003-2004
PublishPort=2023-2024:2023-2024
PublishPort=8125:8125/udp
PublishPort=8125:8125
Volume=graphite-conf:/opt/graphite/conf
EnvironmentFile=graphite.env

View file

@ -0,0 +1 @@
EXAMPLE=value

View file

@ -0,0 +1,6 @@
[Unit]
Description=Graphite network
[Network]
NetworkName=graphite

View file

@ -0,0 +1,3 @@
[Volume]
VolumeName=graphite-conf

View file

@ -0,0 +1,28 @@
[Unit]
Description=Graylog datanode
[Service]
Restart=on-failure
TimeoutStartSec=900
[Install]
WantedBy=default.target
[Container]
Image=docker.io/graylog/graylog-datanode:6.1
ContainerName=graylog-datanode
AutoUpdate=registry
Network=graylog.network
HostName=graylog-datanode
PublishPort=8999:8999
PublishPort=9200:9200
PublishPort=9300:9300
Volume=graylog-datanode:/var/lib/graylog-datanode
Environment=GRAYLOG_DATANODE_ID_FILE=/var/lib/graylog-datanode/node-id
Environment=GRAYLOG_DATANODE_MONGODB_URI=mongodb://graylog-db:27017/graylog
Secret=graylog-password-secret,type=env,target=GRAYLOG_DATANODE_PASSWORD_SECRET

View file

@ -0,0 +1,21 @@
[Unit]
Description=Graylog MongoDB
[Service]
Restart=on-failure
TimeoutStartSec=900
[Install]
WantedBy=default.target
[Container]
Image=docker.io/mongo:6.0
ContainerName=graylog-db
AutoUpdate=registry
Network=graylog.network
HostName=graylog-db
Volume=graylog-db-data:/data/db
Volume=graylog-db-config:/data/configdb

View file

@ -0,0 +1,45 @@
[Unit]
Description=Graylog
Wants=graylog-db
Wants=graylog-database
After=graylog-db
After=graylog-database
[Service]
Restart=on-failure
TimeoutStartSec=900
[Install]
WantedBy=default.target
[Container]
Image=docker.io/graylog:6.1
ContainerName=graylog
AutoUpdate=registry
Network=graylog.network
HostName=graylog
PublishPort=5044:5044/tcp
PublishPort=5140:5140/udp
PublishPort=5140:5140/tcp
PublishPort=5555:5555/tcp
PublishPort=5555:5555/udp
PublishPort=9000:9000/tcp
PublishPort=12201:12201/tcp
PublishPort=12201:12201/udp
PublishPort=13301:13301/tcp
PublishPort=13302:13302/tcp
Volume=graylog-data:/usr/share/graylog/data/data
Environment=GRAYLOG_NODE_ID_FILE=/usr/share/graylog/data/data/node-id
Environment=GRAYLOG_HTTP_BIND_ADDRESS=0.0.0.0:9000
Environment=GRAYLOG_HTTP_EXTERNAL_URI=http://localhost:9000/
Environment=GRAYLOG_MONGODB_URI=mongodb://graylog-db:27017/graylog
Secret=graylog-password-secret,type=env,target=GRAYLOG_PASSWORD_SECRET
Secret=graylog-root-password-sha2,type=env,target=GRAYLOG_ROOT_PASSWORD_SHA2
Entrypoint=/usr/bin/tini
Exec=-- /docker-entrypoint.sh

View file

@ -0,0 +1,7 @@
[Unit]
Description=Graylog network
[Network]
NetworkName=graylog
Subnet=172.25.1.0/29
Gateway=172.25.0.1

View file

@ -0,0 +1,22 @@
[Unit]
Description=Grocy grocery management
[Service]
Restart=on-failure
TimeoutStartSec=900
[Install]
WantedBy=default.target
[Container]
Image=lscr.io/linuxserver/grocy
ContainerName=grocy
AutoUpdate=registry
Network=grocy.network
HostName=grocy
PublishPort=9283:80
Volume=grocy-config:/config
Environment=TZ=Etc/UTC

View file

@ -0,0 +1 @@
[Network]

View file

@ -0,0 +1,3 @@
[Volume]
VolumeName=grocy-config

View file

@ -0,0 +1,26 @@
[Unit]
Description=Healthchecks postgres
Requires=healthchecks-postgres.service
After=healthchecks-postgres.service
[Service]
Restart=on-failure
TimeoutStartSec=900
[Install]
WantedBy=default.target
[Container]
Image=docker.io/postgres:16
ContainerName=healthchecks-postgres
AutoUpdate=registry
Network=healthchecks.network
HostName=healthchecks-postgres
PublishPort=8000:8000
Volume=healthchecks-postgres:/var/lib/postgresql/data
Environment=POSTGRES_DB=healthchecks
Secret=healthchecks-postgres-password,type=env,target=POSTGRES_PASSWORD

View file

@ -0,0 +1,24 @@
[Unit]
Description=Healthchecks
Requires=healthchecks-postgres.service
After=healthchecks-postgres.service
[Service]
Restart=on-failure
TimeoutStartSec=900
[Install]
WantedBy=default.target
[Container]
Image=docker.io/healthchecks:latest
ContainerName=healthchecks
AutoUpdate=registry
Network=healthchecks.network
HostName=healthchecks
PublishPort=8000:8000
EnvironmentFile=healthchecks.env
Exec=uwsgi /opt/healthchecks/docker/uwsgi.ini

View file

@ -0,0 +1,80 @@
ALLOWED_HOSTS=localhost
APPRISE_ENABLED=False
DB=postgres
DB_CONN_MAX_AGE=0
DB_HOST=db
DB_NAME=hc
# Use Secret=...
# DB_PASSWORD=fixme-postgres-password
DB_PORT=5432
DB_SSLMODE=prefer
DB_TARGET_SESSION_ATTRS=read-write
DB_USER=postgres
DEBUG=False
DEFAULT_FROM_EMAIL=healthchecks@example.org
DISCORD_CLIENT_ID=
DISCORD_CLIENT_SECRET=
EMAIL_HOST=
EMAIL_HOST_PASSWORD=
EMAIL_HOST_USER=
EMAIL_PORT=587
EMAIL_USE_TLS=True
EMAIL_USE_VERIFICATION=True
INTEGRATIONS_ALLOW_PRIVATE_IPS=False
LINENOTIFY_CLIENT_ID=
LINENOTIFY_CLIENT_SECRET=
MASTER_BADGE_LABEL=Mychecks
MATRIX_ACCESS_TOKEN=
MATRIX_HOMESERVER=
MATRIX_USER_ID=
MATTERMOST_ENABLED=True
MSTEAMS_ENABLED=True
OPSGENIE_ENABLED=True
PAGERTREE_ENABLED=True
PD_APP_ID=
PD_ENABLED=True
PING_BODY_LIMIT=10000
PING_EMAIL_DOMAIN=localhost
PING_ENDPOINT=http://localhost:8000/ping/
PROMETHEUS_ENABLED=True
PUSHBULLET_CLIENT_ID=
PUSHBULLET_CLIENT_SECRET=
PUSHOVER_API_TOKEN=
PUSHOVER_EMERGENCY_EXPIRATION=86400
PUSHOVER_EMERGENCY_RETRY_DELAY=300
PUSHOVER_SUBSCRIPTION_URL=
REGISTRATION_OPEN=True
REMOTE_USER_HEADER=
ROCKETCHAT_ENABLED=True
RP_ID=
S3_ACCESS_KEY=
S3_BUCKET=
S3_ENDPOINT=
S3_REGION=
S3_SECRET_KEY=
S3_TIMEOUT=60
S3_SECURE=True
SECRET_KEY=---
SHELL_ENABLED=False
SIGNAL_CLI_SOCKET=
SITE_LOGO_URL=
SITE_NAME=Mychecks
SITE_ROOT=http://localhost:8000
SLACK_CLIENT_ID=
SLACK_CLIENT_SECRET=
SLACK_ENABLED=True
# SMTPD_PORT=
SPIKE_ENABLED=True
TELEGRAM_BOT_NAME=ExampleBot
TELEGRAM_TOKEN=
TRELLO_APP_KEY=
TWILIO_ACCOUNT=
TWILIO_AUTH=
TWILIO_FROM=
TWILIO_USE_WHATSAPP=False
USE_PAYMENTS=False
VICTOROPS_ENABLED=True
WEBHOOKS_ENABLED=True
WHATSAPP_DOWN_CONTENT_SID=
WHATSAPP_UP_CONTENT_SID=
ZULIP_ENABLED=True

View file

@ -0,0 +1,6 @@
[Unit]
Description=Healthchecks network
[Network]
NetworkName=healthchecks

View file

@ -0,0 +1,3 @@
[Volume]
VolumeName=healthchecks-postgres

View file

@ -11,6 +11,9 @@ WantedBy=default.target
[Container] [Container]
Image=docker.io/zenika/alpine-chrome Image=docker.io/zenika/alpine-chrome
ContainerName=hoarder-chrome ContainerName=hoarder-chrome
AutoUpdate=registry
Network=hoarder.network
HostName=hoarder-chrome HostName=hoarder-chrome
Exec=--no-sandbox --disable-gpu --disable-dev-shm-usage --remote-debugging-address=0.0.0.0 --remote-debugging-port=9222 --hide-scrollbars Exec=--no-sandbox --disable-gpu --disable-dev-shm-usage --remote-debugging-address=0.0.0.0 --remote-debugging-port=9222 --hide-scrollbars

View file

@ -1,7 +1,6 @@
[Unit] [Unit]
Description=Hoarder requirement Description=Hoarder requirement
[Service] [Service]
Restart=on-failure Restart=on-failure
TimeoutStartSec=900 TimeoutStartSec=900
@ -12,8 +11,11 @@ WantedBy=default.target
[Container] [Container]
Image=docker.io/getmeili/meilisearch:v1.6 Image=docker.io/getmeili/meilisearch:v1.6
ContainerName=hoarder-meilisearch ContainerName=hoarder-meilisearch
AutoUpdate=registry
Network=hoarder.network
HostName=hoarder-meilisearch HostName=hoarder-meilisearch
EnvironmentFile=hoarder.env EnvironmentFile=hoarder.env
Volume=meilisearch:/meili_data Volume=hoarder-meilisearch:/meili_data

View file

@ -12,9 +12,11 @@ WantedBy=default.target
[Container] [Container]
Image=ghcr.io/hoarder-app/hoarder:release Image=ghcr.io/hoarder-app/hoarder:release
ContainerName=hoarder ContainerName=hoarder
HostName=hoarder AutoUpdate=registry
PublishPort=3000 Network=hoarder.network
HostName=hoarder
PublishPort=3000:3000
Volume=hoarder-data:/data Volume=hoarder-data:/data

View file

@ -1,2 +1,3 @@
[Volume] [Volume]
VolumeName=hoarder-data VolumeName=hoarder-data
VolumeName=hoarder-meilisearch

View file

@ -1,2 +0,0 @@
[Volume]
VolumeName=meilisearch

View file

@ -1,3 +0,0 @@
[Volume]
VolumeName=homarr-data

View file

@ -1,7 +1,6 @@
[Unit] [Unit]
Description=Homarr Description=Homarr
[Service] [Service]
Restart=on-failure Restart=on-failure
TimeoutStartSec=900 TimeoutStartSec=900
@ -12,6 +11,8 @@ WantedBy=default.target
[Container] [Container]
Image=ghcr.io/ajnart/homarr:latest Image=ghcr.io/ajnart/homarr:latest
ContainerName=homarr ContainerName=homarr
Network=homarr.network
HostName=homarr HostName=homarr
Volume=homarr-configs:/app/data/configs Volume=homarr-configs:/app/data/configs

View file

@ -0,0 +1 @@
[Network]

View file

@ -1,3 +1,4 @@
[Volume] [Volume]
VolumeName=homarr-configs VolumeName=homarr-configs
VolumeName=homarr-data

View file

@ -0,0 +1,23 @@
[Unit]
Description=Homepage
[Service]
Restart=on-failure
TimeoutStartSec=900
[Install]
WantedBy=default.target
[Container]
Image=ghcr.io/gethomepage/homepage:latest
ContainerName=homepage
AutoUpdate=registry
Network=homepage.network
HostName=homepage
PublishPort=3000:3000
Volume=homepage-config:/app/config
Environment=HOMEPAGE_ALLOWED_HOSTS=homepage.example.com

View file

@ -0,0 +1,6 @@
[Unit]
Description=Homepage network
[Network]
NetworkName=homepage

View file

@ -0,0 +1,3 @@
[Volume]
VolumeName=homepage-config

View file

@ -11,8 +11,10 @@ WantedBy=default.target
[Container] [Container]
Image=docker.io/b4bz/homer Image=docker.io/b4bz/homer
ContainerName=homer ContainerName=homer
HostName=homer AutoUpdate=registry
Network=homer.network
HostName=homer
PublishPort=8080:8080 PublishPort=8080:8080
Volume=homer-assets:/www/assets Volume=homer-assets:/www/assets

View file

@ -0,0 +1 @@
[Network]

View file

@ -11,6 +11,7 @@ WantedBy=default.target
[Container] [Container]
Image=docker.io/corentinth/it-tools:latest Image=docker.io/corentinth/it-tools:latest
ContainerName=it-tools ContainerName=it-tools
HostName=it-tools
Network=it-tools.network
HostName=it-tools
PublishPort=8088:80 PublishPort=8088:80

View file

@ -0,0 +1 @@
[Network]

View file

@ -10,9 +10,11 @@ WantedBy=default.target
[Container] [Container]
Image=docker.io/joplin/server:latest Image=docker.io/joplin/server:latest
ContainerName=joplin-server ContainerName=joplin
HostName=joplin-server AutoUpdate=registry
Network=joplin.network
HostName=joplin
PublishPort=22300:22300 PublishPort=22300:22300
Environment=APP_BASE_URL=https://joplin.example.com Environment=APP_BASE_URL=https://joplin.example.com

Some files were not shown because too many files have changed in this diff Show more