Compare commits
62 commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
0569221088 | ||
![]() |
8a20cf4a3b | ||
![]() |
c17d605334 | ||
![]() |
58f428285e | ||
![]() |
b9f9b8d106 | ||
![]() |
500ffb5f8c | ||
![]() |
72f703b5f9 | ||
![]() |
93e97f11ae | ||
![]() |
cb8ce2a2fb | ||
![]() |
27c9ba29cc | ||
![]() |
12eb66d913 | ||
![]() |
793f61fb60 | ||
![]() |
a067a6c857 | ||
![]() |
8e2fce82bb | ||
![]() |
ddb6721ca7 | ||
![]() |
67148f146f | ||
![]() |
808c26324e | ||
![]() |
3cc8919e6d | ||
![]() |
6d9e428987 | ||
![]() |
c48014cb23 | ||
![]() |
6c66dff470 | ||
![]() |
2af05d816b | ||
![]() |
2f11e411f2 | ||
![]() |
d53c42a7f7 | ||
![]() |
38ca9db96a | ||
![]() |
f2f7a03e8d | ||
![]() |
f3b4b61137 | ||
![]() |
7079952150 | ||
![]() |
f2628b947f | ||
![]() |
42bc453386 | ||
![]() |
2e77a9b6d0 | ||
![]() |
ee171d2d46 | ||
![]() |
b759dc832b | ||
![]() |
284310f9cb | ||
![]() |
1f507d9889 | ||
![]() |
29e77039ac | ||
![]() |
8c98a4e63d | ||
![]() |
740508e177 | ||
![]() |
1fdb890ee2 | ||
![]() |
53af271df2 | ||
![]() |
295999f40d | ||
![]() |
5c3a58c1e8 | ||
![]() |
659de22e42 | ||
![]() |
e751cb6580 | ||
![]() |
49221c4b58 | ||
![]() |
ec33e116a1 | ||
![]() |
ce3d7b2438 | ||
![]() |
8d3d21476e | ||
![]() |
2230e91693 | ||
![]() |
1d84da078c | ||
![]() |
0e5e90214f | ||
![]() |
17071fe229 | ||
![]() |
7225857391 | ||
![]() |
96ac7bbfac | ||
![]() |
d57b085d52 | ||
![]() |
0448ff83a1 | ||
![]() |
07794e42fa | ||
![]() |
7a69dc54d8 | ||
![]() |
4d5815e34d | ||
![]() |
a94ef488a6 | ||
![]() |
c5945259e0 | ||
![]() |
c34bb5d942 |
263 changed files with 2557 additions and 224 deletions
61
README.md
61
README.md
|
@ -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,77 +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)
|
||||||
- [ ] [Glance](https://github.com/glanceapp/glance)
|
- [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)
|
- [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)
|
||||||
|
@ -218,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/)
|
||||||
|
|
39
Ubuntu.md
39
Ubuntu.md
|
@ -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
|
||||||
|
```
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
# Quadlets
|
## Quadlets
|
||||||
|
|
||||||
Quadlets go in `~/.config/containers/systemd`.
|
Quadlets go in `~/.config/containers/systemd`.
|
||||||
|
|
|
@ -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
|
||||||
|
|
1
quadlets/actual/actual.network
Normal file
1
quadlets/actual/actual.network
Normal file
|
@ -0,0 +1 @@
|
||||||
|
[Network]
|
|
@ -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
|
||||||
|
|
1
quadlets/adguard/adguard.network
Normal file
1
quadlets/adguard/adguard.network
Normal file
|
@ -0,0 +1 @@
|
||||||
|
[Network]
|
25
quadlets/apprise/apprise.container
Normal file
25
quadlets/apprise/apprise.container
Normal 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
|
6
quadlets/apprise/apprise.network
Normal file
6
quadlets/apprise/apprise.network
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
[Unit]
|
||||||
|
Description=Apprise network
|
||||||
|
|
||||||
|
[Network]
|
||||||
|
NetworkName=apprise
|
||||||
|
|
5
quadlets/apprise/apprise.volume
Normal file
5
quadlets/apprise/apprise.volume
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
[Volume]
|
||||||
|
VolumeName=apprise-config
|
||||||
|
VolumeName=apprise-plugin
|
||||||
|
VolumeName=apprise-attach
|
||||||
|
|
|
@ -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
|
|
||||||
|
|
1
quadlets/audiobookshelf/audiobookshelf.network
Normal file
1
quadlets/audiobookshelf/audiobookshelf.network
Normal file
|
@ -0,0 +1 @@
|
||||||
|
[Network]
|
24
quadlets/betanin/betanin.container
Normal file
24
quadlets/betanin/betanin.container
Normal 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
|
6
quadlets/betanin/betanin.network
Normal file
6
quadlets/betanin/betanin.network
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
[Unit]
|
||||||
|
Description=betanin network
|
||||||
|
|
||||||
|
[Network]
|
||||||
|
NetworkName=betanin
|
||||||
|
|
5
quadlets/betanin/betanin.volume
Normal file
5
quadlets/betanin/betanin.volume
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
[Volume]
|
||||||
|
VolumeName=betanin-data
|
||||||
|
VolumeName=betanin-config
|
||||||
|
VolumeName=betanin-beets
|
||||||
|
|
|
@ -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
|
||||||
|
|
||||||
|
|
|
@ -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
|
||||||
|
|
||||||
|
|
1
quadlets/blinko/blinko.network
Normal file
1
quadlets/blinko/blinko.network
Normal file
|
@ -0,0 +1 @@
|
||||||
|
[Network]
|
|
@ -1,3 +1,4 @@
|
||||||
[Volume]
|
[Volume]
|
||||||
VolumeName=blinko-data
|
VolumeName=blinko-data
|
||||||
|
VolumeName=blinko-db
|
||||||
|
|
||||||
|
|
|
@ -1,3 +0,0 @@
|
||||||
[Volume]
|
|
||||||
VolumeName=blinko-db
|
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -1,2 +1,3 @@
|
||||||
[Volume]
|
[Volume]
|
||||||
VolumeName=caddy-config
|
VolumeName=caddy-config
|
||||||
|
VolumeName=caddy-data
|
|
@ -1,2 +0,0 @@
|
||||||
[Volume]
|
|
||||||
VolumeName=caddy-data
|
|
1
quadlets/caddy/reverse-proxy.network
Normal file
1
quadlets/caddy/reverse-proxy.network
Normal file
|
@ -0,0 +1 @@
|
||||||
|
[Network]
|
|
@ -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
|
||||||
|
|
1
quadlets/calibre/calibre.network
Normal file
1
quadlets/calibre/calibre.network
Normal file
|
@ -0,0 +1 @@
|
||||||
|
[Network]
|
|
@ -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
|
||||||
|
|
||||||
|
|
1
quadlets/chartdb/chartdb.network
Normal file
1
quadlets/chartdb/chartdb.network
Normal file
|
@ -0,0 +1 @@
|
||||||
|
[Network]
|
22
quadlets/checkmate/checkmate-mongo.container
Normal file
22
quadlets/checkmate/checkmate-mongo.container
Normal 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
|
20
quadlets/checkmate/checkmate-redis.container
Normal file
20
quadlets/checkmate/checkmate-redis.container
Normal 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
|
27
quadlets/checkmate/checkmate-server.container
Normal file
27
quadlets/checkmate/checkmate-server.container
Normal 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
|
23
quadlets/checkmate/checkmate.container
Normal file
23
quadlets/checkmate/checkmate.container
Normal 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
|
6
quadlets/checkmate/checkmate.network
Normal file
6
quadlets/checkmate/checkmate.network
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
[Unit]
|
||||||
|
Description=Checkmate network
|
||||||
|
|
||||||
|
[Network]
|
||||||
|
NetworkName=checkmate
|
||||||
|
|
4
quadlets/checkmate/checkmate.volume
Normal file
4
quadlets/checkmate/checkmate.volume
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
[Volume]
|
||||||
|
VolumeName=checkmate-mongodb
|
||||||
|
VolumeName=checkmate-redis
|
||||||
|
|
|
@ -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
|
||||||
|
|
||||||
|
|
|
@ -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
|
||||||
|
|
||||||
|
|
1
quadlets/dashdot/dashdot.network
Normal file
1
quadlets/dashdot/dashdot.network
Normal file
|
@ -0,0 +1 @@
|
||||||
|
[Network]
|
|
@ -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
|
||||||
|
|
||||||
|
|
1
quadlets/dashy/dashy.network
Normal file
1
quadlets/dashy/dashy.network
Normal file
|
@ -0,0 +1 @@
|
||||||
|
[Network]
|
|
@ -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
|
||||||
|
|
1
quadlets/filebrowser/filebrowser.network
Normal file
1
quadlets/filebrowser/filebrowser.network
Normal file
|
@ -0,0 +1 @@
|
||||||
|
[Network]
|
23
quadlets/filestash/filestash-wopi.container
Normal file
23
quadlets/filestash/filestash-wopi.container
Normal 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'
|
28
quadlets/filestash/filestash.container
Normal file
28
quadlets/filestash/filestash.container
Normal 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
|
||||||
|
|
1
quadlets/filestash/filestash.network
Normal file
1
quadlets/filestash/filestash.network
Normal file
|
@ -0,0 +1 @@
|
||||||
|
[Network]
|
2
quadlets/forgejo/forgejo-data.volume
Normal file
2
quadlets/forgejo/forgejo-data.volume
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
[Volume]
|
||||||
|
VolumeName=forgejo-data
|
22
quadlets/forgejo/forgejo.container
Normal file
22
quadlets/forgejo/forgejo.container
Normal 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
|
1
quadlets/forgejo/forgejo.network
Normal file
1
quadlets/forgejo/forgejo.network
Normal file
|
@ -0,0 +1 @@
|
||||||
|
[Network]
|
|
@ -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"
|
1
quadlets/foundryvtt/foundryvtt.network
Normal file
1
quadlets/foundryvtt/foundryvtt.network
Normal file
|
@ -0,0 +1 @@
|
||||||
|
[Network]
|
|
@ -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
|
||||||
|
|
|
@ -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
|
|
||||||
|
|
|
@ -1,9 +1 @@
|
||||||
[Network]
|
[Network]
|
||||||
Subnet=10.10.10.0/24
|
|
||||||
Gateway=10.10.10.1
|
|
||||||
Label=app=freshrss
|
|
||||||
Driver=pasta
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
23
quadlets/gaseous/gaseous-mariadb.container
Normal file
23
quadlets/gaseous/gaseous-mariadb.container
Normal 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
|
29
quadlets/gaseous/gaseous.container
Normal file
29
quadlets/gaseous/gaseous.container
Normal 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=
|
6
quadlets/gaseous/gaseous.network
Normal file
6
quadlets/gaseous/gaseous.network
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
[Unit]
|
||||||
|
Description=Gaseous ROMs network
|
||||||
|
|
||||||
|
[Network]
|
||||||
|
NetworkName=gaseous
|
||||||
|
|
4
quadlets/gaseous/gaseous.volume
Normal file
4
quadlets/gaseous/gaseous.volume
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
[Volume]
|
||||||
|
VolumeName=gaseous
|
||||||
|
VolumeName=gaseous-mariadb
|
||||||
|
|
|
@ -13,8 +13,9 @@ Image=docker.io/glanceapp/glance
|
||||||
ContainerName=glance
|
ContainerName=glance
|
||||||
AutoUpdate=registry
|
AutoUpdate=registry
|
||||||
|
|
||||||
|
Network=glance.network
|
||||||
HostName=glance
|
HostName=glance
|
||||||
PublishPort=8080
|
PublishPort=8080:8080
|
||||||
|
|
||||||
Volume=./config:/app/config
|
Volume=glance-config:/app/config
|
||||||
|
|
||||||
|
|
2
quadlets/glance/glance.volume
Normal file
2
quadlets/glance/glance.volume
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
[Volume]
|
||||||
|
VolumeName=glance-config
|
|
@ -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
|
||||||
|
|
1
quadlets/glances/glances.network
Normal file
1
quadlets/glances/glances.network
Normal file
|
@ -0,0 +1 @@
|
||||||
|
[Network]
|
|
@ -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
|
||||||
|
|
26
quadlets/graphite/graphite.container
Normal file
26
quadlets/graphite/graphite.container
Normal 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
|
1
quadlets/graphite/graphite.env
Normal file
1
quadlets/graphite/graphite.env
Normal file
|
@ -0,0 +1 @@
|
||||||
|
EXAMPLE=value
|
6
quadlets/graphite/graphite.network
Normal file
6
quadlets/graphite/graphite.network
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
[Unit]
|
||||||
|
Description=Graphite network
|
||||||
|
|
||||||
|
[Network]
|
||||||
|
NetworkName=graphite
|
||||||
|
|
3
quadlets/graphite/graphite.volume
Normal file
3
quadlets/graphite/graphite.volume
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
[Volume]
|
||||||
|
VolumeName=graphite-conf
|
||||||
|
|
28
quadlets/graylog/graylog-datanode.container
Normal file
28
quadlets/graylog/graylog-datanode.container
Normal 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
|
||||||
|
|
21
quadlets/graylog/graylog-db.container
Normal file
21
quadlets/graylog/graylog-db.container
Normal 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
|
||||||
|
|
45
quadlets/graylog/graylog.container
Normal file
45
quadlets/graylog/graylog.container
Normal 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
|
||||||
|
|
7
quadlets/graylog/graylog.network
Normal file
7
quadlets/graylog/graylog.network
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
[Unit]
|
||||||
|
Description=Graylog network
|
||||||
|
|
||||||
|
[Network]
|
||||||
|
NetworkName=graylog
|
||||||
|
Subnet=172.25.1.0/29
|
||||||
|
Gateway=172.25.0.1
|
22
quadlets/grocy/grocy.container
Normal file
22
quadlets/grocy/grocy.container
Normal 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
|
1
quadlets/grocy/grocy.network
Normal file
1
quadlets/grocy/grocy.network
Normal file
|
@ -0,0 +1 @@
|
||||||
|
[Network]
|
3
quadlets/grocy/grocy.volume
Normal file
3
quadlets/grocy/grocy.volume
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
[Volume]
|
||||||
|
VolumeName=grocy-config
|
||||||
|
|
26
quadlets/healthchecks/healthchecks-postgres.container
Normal file
26
quadlets/healthchecks/healthchecks-postgres.container
Normal 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
|
24
quadlets/healthchecks/healthchecks.container
Normal file
24
quadlets/healthchecks/healthchecks.container
Normal 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
|
80
quadlets/healthchecks/healthchecks.env
Normal file
80
quadlets/healthchecks/healthchecks.env
Normal 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
|
6
quadlets/healthchecks/healthchecks.network
Normal file
6
quadlets/healthchecks/healthchecks.network
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
[Unit]
|
||||||
|
Description=Healthchecks network
|
||||||
|
|
||||||
|
[Network]
|
||||||
|
NetworkName=healthchecks
|
||||||
|
|
3
quadlets/healthchecks/healthchecks.volume
Normal file
3
quadlets/healthchecks/healthchecks.volume
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
[Volume]
|
||||||
|
VolumeName=healthchecks-postgres
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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
|
||||||
|
|
||||||
|
|
|
@ -1,2 +1,3 @@
|
||||||
[Volume]
|
[Volume]
|
||||||
VolumeName=hoarder-data
|
VolumeName=hoarder-data
|
||||||
|
VolumeName=hoarder-meilisearch
|
|
@ -1,2 +0,0 @@
|
||||||
[Volume]
|
|
||||||
VolumeName=meilisearch
|
|
|
@ -1,3 +0,0 @@
|
||||||
[Volume]
|
|
||||||
VolumeName=homarr-data
|
|
||||||
|
|
|
@ -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
|
||||||
|
|
1
quadlets/homarr/homarr.network
Normal file
1
quadlets/homarr/homarr.network
Normal file
|
@ -0,0 +1 @@
|
||||||
|
[Network]
|
|
@ -1,3 +1,4 @@
|
||||||
[Volume]
|
[Volume]
|
||||||
VolumeName=homarr-configs
|
VolumeName=homarr-configs
|
||||||
|
VolumeName=homarr-data
|
||||||
|
|
23
quadlets/homepage/homepage.container
Normal file
23
quadlets/homepage/homepage.container
Normal 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
|
||||||
|
|
6
quadlets/homepage/homepage.network
Normal file
6
quadlets/homepage/homepage.network
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
[Unit]
|
||||||
|
Description=Homepage network
|
||||||
|
|
||||||
|
[Network]
|
||||||
|
NetworkName=homepage
|
||||||
|
|
3
quadlets/homepage/homepage.volume
Normal file
3
quadlets/homepage/homepage.volume
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
[Volume]
|
||||||
|
VolumeName=homepage-config
|
||||||
|
|
|
@ -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
|
||||||
|
|
1
quadlets/homer/homer.network
Normal file
1
quadlets/homer/homer.network
Normal file
|
@ -0,0 +1 @@
|
||||||
|
[Network]
|
|
@ -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
|
1
quadlets/it-tools/it-tools.network
Normal file
1
quadlets/it-tools/it-tools.network
Normal file
|
@ -0,0 +1 @@
|
||||||
|
[Network]
|
|
@ -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
|
||||||
|
|
1
quadlets/joplin/joplin.network
Normal file
1
quadlets/joplin/joplin.network
Normal file
|
@ -0,0 +1 @@
|
||||||
|
[Network]
|
|
@ -12,13 +12,14 @@ WantedBy=default.target
|
||||||
[Container]
|
[Container]
|
||||||
Image=ghcr.io/kareadita/kavita:latest
|
Image=ghcr.io/kareadita/kavita:latest
|
||||||
ContainerName=kavita
|
ContainerName=kavita
|
||||||
HostName=kavita
|
|
||||||
AutoUpdate=registry
|
AutoUpdate=registry
|
||||||
|
|
||||||
|
Network=kavita.network
|
||||||
|
HostName=kavita
|
||||||
PublishPort=5000
|
PublishPort=5000
|
||||||
|
|
||||||
Volume=kavita-config:/kavita/config
|
Volume=kavita-config:/kavita/config
|
||||||
Volume=/volumes/books:/library
|
Volume=/volumes/books:/library
|
||||||
|
|
||||||
Environment=TZ=
|
Environment=TZ=Etc/UTC
|
||||||
|
|
||||||
|
|
1
quadlets/kavita/kavita.network
Normal file
1
quadlets/kavita/kavita.network
Normal file
|
@ -0,0 +1 @@
|
||||||
|
[Network]
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue