mirror of
https://github.com/funkypenguin/geek-cookbook/
synced 2025-12-15 10:46:34 +00:00
@@ -11,7 +11,7 @@ The registry mirror runs as a swarm stack, using a simple docker-compose.yml. Cu
|
|||||||
## Ingredients
|
## Ingredients
|
||||||
|
|
||||||
1. [Docker swarm cluster](/docker-swarm/design/) with [persistent shared storage](/docker-swarm/shared-storage-ceph/)
|
1. [Docker swarm cluster](/docker-swarm/design/) with [persistent shared storage](/docker-swarm/shared-storage-ceph/)
|
||||||
2. [Traefik](/docker-swarm/traefik) configured per design
|
2. [Traefik](/docker-swarm/traefik/) configured per design
|
||||||
3. DNS entry for the hostname you intend to use, pointed to your [keepalived](/docker-swarm/keepalived/) IP
|
3. DNS entry for the hostname you intend to use, pointed to your [keepalived](/docker-swarm/keepalived/) IP
|
||||||
|
|
||||||
## Preparation
|
## Preparation
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ Welcome, fellow geek :wave: If you're impatient, just start here :point_down:
|
|||||||
|
|
||||||
Join the fun, chat with fellow geeks in realtime!
|
Join the fun, chat with fellow geeks in realtime!
|
||||||
|
|
||||||
- __Fast-track with 🚀 [Premix](/premix)!__
|
- __Fast-track with 🚀 [Premix](/premix/)!__
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ Since this recipe is so long, and so many of the tools are optional to the final
|
|||||||
Already deployed:
|
Already deployed:
|
||||||
|
|
||||||
* [X] [Docker swarm cluster](/docker-swarm/design/) with [persistent shared storage](/docker-swarm/shared-storage-ceph/)
|
* [X] [Docker swarm cluster](/docker-swarm/design/) with [persistent shared storage](/docker-swarm/shared-storage-ceph/)
|
||||||
* [X] [Traefik](/docker-swarm/traefik) configured per design
|
* [X] [Traefik](/docker-swarm/traefik/) configured per design
|
||||||
* [X] DNS entry for the hostname you intend to use (*or a wildcard*), pointed to your [keepalived](/docker-swarm/keepalived/) IP
|
* [X] DNS entry for the hostname you intend to use (*or a wildcard*), pointed to your [keepalived](/docker-swarm/keepalived/) IP
|
||||||
|
|
||||||
Related:
|
Related:
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ A friendly middle ground between heavyweights like MediaWiki or Confluence and [
|
|||||||
|
|
||||||
{ loading=lazy }
|
{ loading=lazy }
|
||||||
|
|
||||||
I like to protect my public-facing web UIs with an [oauth_proxy](/reference/oauth_proxy), ensuring that if an application bug (or a user misconfiguration) exposes the app to unplanned public scrutiny, I have a second layer of defense.
|
I like to protect my public-facing web UIs with an [oauth_proxy](/reference/oauth_proxy/), ensuring that if an application bug (or a user misconfiguration) exposes the app to unplanned public scrutiny, I have a second layer of defense.
|
||||||
|
|
||||||
--8<-- "recipe-standard-ingredients.md"
|
--8<-- "recipe-standard-ingredients.md"
|
||||||
|
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ It's basically the [LibreOffice](https://www.libreoffice.org/) interface in a we
|
|||||||
## Ingredients
|
## Ingredients
|
||||||
|
|
||||||
1. [Docker swarm cluster](/docker-swarm/design/) with [persistent shared storage](/docker-swarm/shared-storage-ceph/)
|
1. [Docker swarm cluster](/docker-swarm/design/) with [persistent shared storage](/docker-swarm/shared-storage-ceph/)
|
||||||
2. [Traefik](/docker-swarm/traefik) configured per design
|
2. [Traefik](/docker-swarm/traefik/) configured per design
|
||||||
3. DNS entry for the hostname (_i.e. "collabora.your-domain.com"_) you intend to use for LDAP Account Manager, pointed to your [keepalived](/docker-swarm/keepalived/) IP
|
3. DNS entry for the hostname (_i.e. "collabora.your-domain.com"_) you intend to use for LDAP Account Manager, pointed to your [keepalived](/docker-swarm/keepalived/) IP
|
||||||
4. [NextCloud](/recipes/nextcloud/) installed and operational
|
4. [NextCloud](/recipes/nextcloud/) installed and operational
|
||||||
5. [Docker-compose](https://docs.docker.com/compose/install/) installed on your node(s) - this is a special case which needs to run outside of Docker Swarm
|
5. [Docker-compose](https://docs.docker.com/compose/install/) installed on your node(s) - this is a special case which needs to run outside of Docker Swarm
|
||||||
|
|||||||
@@ -129,6 +129,6 @@ Launch the Home Assistant stack by running ```docker stack deploy homeassistant
|
|||||||
|
|
||||||
Log into your new instance at https://**YOUR-FQDN**, the password you created in configuration.yml as "frontend - api_key". Then setup a bunch of sensors, and log into <https://grafana>.**YOUR FQDN** and create some beautiful graphs :)
|
Log into your new instance at https://**YOUR-FQDN**, the password you created in configuration.yml as "frontend - api_key". Then setup a bunch of sensors, and log into <https://grafana>.**YOUR FQDN** and create some beautiful graphs :)
|
||||||
|
|
||||||
[^1]: I **tried** to protect Home Assistant using [oauth2_proxy](/reference/oauth_proxy), but HA is incompatible with the websockets implementation used by Home Assistant. Until this can be fixed, I suggest that geeks set frontend: api_key to a long and complex string, and rely on this to prevent malevolent internet miscreants from turning their lights on at 2am!
|
[^1]: I **tried** to protect Home Assistant using [oauth2_proxy](/reference/oauth_proxy/), but HA is incompatible with the websockets implementation used by Home Assistant. Until this can be fixed, I suggest that geeks set frontend: api_key to a long and complex string, and rely on this to prevent malevolent internet miscreants from turning their lights on at 2am!
|
||||||
|
|
||||||
--8<-- "recipe-footer.md"
|
--8<-- "recipe-footer.md"
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ description: Jellyfin is best described as "like Emby but really FOSS"
|
|||||||
|
|
||||||
# Jellyfin
|
# Jellyfin
|
||||||
|
|
||||||
[Jellyfin](https://jellyfin.org/) is best described as "_like [Emby](/recipes/emby) but really [FOSS](https://en.wikipedia.org/wiki/Free_and_open-source_software)_".
|
[Jellyfin](https://jellyfin.org/) is best described as "_like [Emby][emby] but really [FOSS](https://en.wikipedia.org/wiki/Free_and_open-source_software)_".
|
||||||
|
|
||||||
{ loading=lazy }
|
{ loading=lazy }
|
||||||
|
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ All saved data (_pages, annotations, images, tags, etc_) are stored on your own
|
|||||||
|
|
||||||
{ loading=lazy }
|
{ loading=lazy }
|
||||||
|
|
||||||
There are plugins for [Chrome](https://chrome.google.com/webstore/detail/wallabagger/gbmgphmejlcoihgedabhgjdkcahacjlj) and [Firefox](https://addons.mozilla.org/firefox/addon/wallabagger/), as well as apps for [iOS](https://appsto.re/fr/YeqYfb.i), [Android](https://play.google.com/store/apps/details?id=fr.gaulupeau.apps.InThePoche), etc. Wallabag will also integrate nicely with my favorite RSS reader, [Miniflux](https://miniflux.net/) (_for which there is an [existing recipe](/recipes/miniflux)_).
|
There are plugins for [Chrome](https://chrome.google.com/webstore/detail/wallabagger/gbmgphmejlcoihgedabhgjdkcahacjlj) and [Firefox](https://addons.mozilla.org/firefox/addon/wallabagger/), as well as apps for [iOS](https://appsto.re/fr/YeqYfb.i), [Android](https://play.google.com/store/apps/details?id=fr.gaulupeau.apps.InThePoche), etc. Wallabag will also integrate nicely with my favorite RSS reader, [Miniflux](https://miniflux.net/) (_for which there is an [existing recipe][miniflux]_).
|
||||||
|
|
||||||
[Here's a video](https://player.vimeo.com/video/167435064) which shows off the UI a bit more.
|
[Here's a video](https://player.vimeo.com/video/167435064) which shows off the UI a bit more.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user