mirror of
https://github.com/funkypenguin/geek-cookbook/
synced 2025-12-13 17:56:26 +00:00
Add mealie
* [recipe] mealie Fixes #157 * Update common links * Improve formatting
This commit is contained in:
@@ -1,26 +1,30 @@
|
||||
[patreon]: https://www.patreon.com/bePatron?u=6982506
|
||||
[github_sponsor]: https://github.com/sponsors/funkypenguin
|
||||
[tfa]: /ha-docker-swarm/traefik-forward-auth/
|
||||
[autopirate]: /recipes/autopirate/
|
||||
[sabnzbd]: /recipes/autopirate/sabnzbd/
|
||||
[nzbget]: /recipes/autopirate/nzbget/
|
||||
[mylar]: /recipes/autopirate/mylar/
|
||||
[sonarr]: /recipes/autopirate/sonarr/
|
||||
[radarr]: /recipes/autopirate/radarr/
|
||||
[lidarr]: /recipes/autopirate/lidarr/
|
||||
[bazarr]: /recipes/autopirate/bazarr/
|
||||
[ombi]: /recipes/autopirate/ombi/
|
||||
[oscarr]: /recipes/autopirate/oscarr/
|
||||
[rtorrent]: /recipes/autopirate/rtorrent/
|
||||
[headphones]: /recipes/autopirate/headphones/
|
||||
[nzbhydra]: /recipes/autopirate/nzbhydra/
|
||||
[lazylibrarian]: /recipes/autopirate/lazylibrarian/
|
||||
[jackett]: /recipes/autopirate/jackett/
|
||||
[cyberchef]: /recipes/cyberchef/
|
||||
[funkwhale]: /recipes/autopirate/funkwhale/
|
||||
[github_sponsor]: https://github.com/sponsors/funkypenguin
|
||||
[headphones]: /recipes/autopirate/headphones/
|
||||
[jackett]: /recipes/autopirate/jackett/
|
||||
[keycloak]: /recipes/keycloak/
|
||||
[komga]: /recipes/komga/
|
||||
[lazylibrarian]: /recipes/autopirate/lazylibrarian/
|
||||
[lidarr]: /recipes/autopirate/lidarr/
|
||||
[linx]: /recipes/linx/
|
||||
[mealie]: /recipes/mealie/
|
||||
[mylar]: /recipes/autopirate/mylar/
|
||||
[nzbget]: /recipes/autopirate/nzbget/
|
||||
[nzbhydra]: /recipes/autopirate/nzbhydra/
|
||||
[ombi]: /recipes/autopirate/ombi/
|
||||
[openldap]: /recipes/openldap/
|
||||
[autopirate]: /recipes/autopirate/
|
||||
[tfa-google]: /ha-docker-swarm/traefik-forward-auth/google/
|
||||
[oscarr]: /recipes/autopirate/oscarr/
|
||||
[patreon]: https://www.patreon.com/bePatron?u=6982506
|
||||
[photoprism]: /recipes/photoprism/
|
||||
[portainer]: /recipes/portainer/
|
||||
[radarr]: /recipes/autopirate/radarr/
|
||||
[rtorrent]: /recipes/autopirate/rtorrent/
|
||||
[sabnzbd]: /recipes/autopirate/sabnzbd/
|
||||
[sonarr]: /recipes/autopirate/sonarr/
|
||||
[tfa-dex-static]: /ha-docker-swarm/traefik-forward-auth/dex-static/
|
||||
[tfa-google]: /ha-docker-swarm/traefik-forward-auth/google/
|
||||
[tfa-keycloak]: /ha-docker-swarm/traefik-forward-auth/keycloak/
|
||||
[tfa]: /ha-docker-swarm/traefik-forward-auth/
|
||||
@@ -7,23 +7,22 @@ hide:
|
||||
## Recent additions
|
||||
|
||||
Recipe | Description | Date
|
||||
-----------------------------------|-------------------------------------------------------------------------------------|--------------
|
||||
[Funkwhale](/recipes/funkwhale/) | Enjoy, share, and federate your music in your own funky "pod". Think "Mastodon for Music" :whale: :musical_note: | _28 Jan 2021_
|
||||
[CyberChef](/recipes/cyberchef/) | A web-based collection of useful tools for INFOSEC work, by the [GCHQ](https://en.wikipedia.org/wiki/GCHQ) | _19 Jan 2021_
|
||||
[Linx](/recipes/linx/) | Quickly and securely share media/files with optional password-protection and expiry | _13 Jan 2021_
|
||||
[Komga](/recipes/komga/) | Beautiful interface to manage and enjoy your comics / graphic novels | _5 Jan 2021_
|
||||
[Photoprism](/recipes/photoprism/) | Self-hosted photo-management app incorporating automated tagging using Tensorflow | _6 Aug 2020_
|
||||
-------------------------|------------------------------------------------------------------------------------------------------------------|--------------
|
||||
[Mealie][mealie] | Delicious, API-driven recipe manager, able to scrape-and-import recipes from a URL :cook: | _4 Feb 2021_
|
||||
[Funkwhale][funkwhale] | Enjoy, share, and federate your music in your own funky "pod". Think "Mastodon for Music" :whale: :musical_note: | _28 Jan 2021_
|
||||
[CyberChef][cyberchef] | A web-based collection of useful tools for INFOSEC work, by the [GCHQ](https://en.wikipedia.org/wiki/GCHQ) | _19 Jan 2021_
|
||||
[Linx][linx] | Quickly and securely share media/files with optional password-protection and expiry | _13 Jan 2021_
|
||||
[Komga][komga] | Beautiful interface to manage and enjoy your comics / graphic novels | _5 Jan 2021_
|
||||
[Photoprism][photoprism] | Self-hosted photo-management app incorporating automated tagging using Tensorflow | _6 Aug 2020_
|
||||
|
||||
|
||||
## Recent updates
|
||||
|
||||
Recipe | Description | Date
|
||||
---------------------------------------------------------------|---------------------------------------|--------------
|
||||
----------------------------|---------------------------------------------------------------------------------|--------------
|
||||
[Traefik Forward Auth][tfa] | Major update for Traefik v2, included instructions for Dex, Google, KeyCloak | _29 Jan 2021_
|
||||
[Autopirate][autopirate] | Updated all components for Traefik v2 labels | _29 Jan 2021_
|
||||
[Portainer](/recipes/portainer/) | Bump to version 2, bringing "expert simplicity" to your Docker stack management | _25 Jan 2021_
|
||||
[Traefik Forward Auth](/ha-docker-swarm/traefik-forward-auth/) | Now uses for latest @thomseddon image | _11 Jun 2020_
|
||||
|
||||
[Portainer][portainer] | Bump to version 2, bringing "expert simplicity" to your Docker stack management | _25 Jan 2021_
|
||||
|
||||
## Subscribe to updates
|
||||
|
||||
|
||||
BIN
manuscript/images/mealie-import-recipe.png
Normal file
BIN
manuscript/images/mealie-import-recipe.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 35 KiB |
BIN
manuscript/images/mealie.png
Normal file
BIN
manuscript/images/mealie.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 674 KiB |
92
manuscript/recipes/mealie.md
Normal file
92
manuscript/recipes/mealie.md
Normal file
@@ -0,0 +1,92 @@
|
||||
# Mealie
|
||||
|
||||
[Mealie](https://github.com/hay-kot/mealie) is a self hosted recipe manager and meal planner (*with a RestAPI backend and a reactive frontend application built in Vue for a pleasant user experience*) for the whole family.
|
||||
|
||||
Easily add recipes into your database by providing the url[^penguinfood], and mealie will automatically import the relevant data or add a family recipe with the UI editor.
|
||||
|
||||

|
||||
|
||||
Mealie also provides a secure API for interactions from 3rd party applications.
|
||||
|
||||
!!! question "Why does my recipe manager need an API?"
|
||||
An API allows integration into applications like Home Assistant that can act as notification engines to provide custom notifications based of Meal Plan data to remind you to defrost the chicken, marinade the steak, or start the CrockPot. See the [official docs](https://hay-kot.github.io/mealie/) for more information. Additionally, you can access any available API from the backend server. To explore the API spin up your server and navigate to http://yourserver.com/docs for interactive API documentation.
|
||||
|
||||
--8<-- "recipe-standard-ingredients.md"
|
||||
|
||||
## Preparation
|
||||
|
||||
### Setup data locations
|
||||
|
||||
First we create a directory to hold the data which mealie will serve:
|
||||
|
||||
```
|
||||
mkdir /var/data/mealie
|
||||
```
|
||||
|
||||
### Create environment
|
||||
|
||||
There's only one environment variable currently required (`db_type`), but let's create an `.env` file anyway, to keep the recipe consistent and extensible.
|
||||
|
||||
```
|
||||
mkdir /var/data/config/mealie
|
||||
cat << EOF > /var/data/config/mealie/mealie.env
|
||||
db_type=sqlite
|
||||
EOF
|
||||
```
|
||||
|
||||
### Setup Docker Swarm
|
||||
|
||||
Create a docker swarm config file in docker-compose syntax (v3), something like this:
|
||||
|
||||
--8<-- "premix-cta.md"
|
||||
|
||||
```yaml
|
||||
version: "3.2" # https://docs.docker.com/compose/compose-file/compose-versioning/#version-3
|
||||
|
||||
services:
|
||||
app:
|
||||
image: hkotel/mealie:latest
|
||||
env_file: /var/data/config/mealie/mealie.env
|
||||
volumes:
|
||||
- /var/data/mealie:/app/data
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
deploy:
|
||||
labels:
|
||||
# traefik
|
||||
- traefik.enable=true
|
||||
- traefik.docker.network=traefik_public
|
||||
|
||||
# traefikv1
|
||||
- traefik.frontend.rule=Host:mealie.example.com
|
||||
- traefik.port=9000
|
||||
- traefik.frontend.auth.forward.address=http://traefik-forward-auth:4181
|
||||
- traefik.frontend.auth.forward.authResponseHeaders=X-Forwarded-User
|
||||
- traefik.frontend.auth.forward.trustForwardHeader=true
|
||||
|
||||
# traefikv2
|
||||
- "traefik.http.routers.mealie.rule=Host(`mealie.example.com`)"
|
||||
- "traefik.http.routers.mealie.entrypoints=https"
|
||||
- "traefik.http.services.mealie.loadbalancer.server.port=9000"
|
||||
- "traefik.http.routers.mealie.middlewares=forward-auth"
|
||||
|
||||
networks:
|
||||
- traefik_public
|
||||
|
||||
networks:
|
||||
traefik_public:
|
||||
external: true
|
||||
```
|
||||
|
||||
## Serving
|
||||
|
||||
### Mealie is served!
|
||||
|
||||
Launch the mealie stack by running ```docker stack deploy mealie -c <path -to-docker-compose.yml>```. The first time you access Mealie at https://**YOUR FQDN**, you might think there's something wrong. There are **no** recipes, and no instructions. Hover over the little plus sign at the bottom right, and within a second, two icons appear. Click the "link" icon to import a recipe from a URL:
|
||||
|
||||

|
||||
|
||||
[^penguinfood]: I scraped all these recipes from https://www.food.com/search/penguin
|
||||
[^1]: If you plan to use Mealie for fancy things like an early-morning alarm to defrost the chicken, you may need to customize the [Traefik Forward Auth][tfa] rules, or even remove them entirely, for unauthenticated API access.
|
||||
[^2]: If you think Mealie is tasty, encourage the developer :cook: to keep on cookin', by [sponsoring him](https://github.com/sponsors/hay-kot) :heart:
|
||||
|
||||
--8<-- "recipe-footer.md"
|
||||
@@ -111,6 +111,7 @@ nav:
|
||||
- OpenLDAP: recipes/keycloak/authenticate-against-openldap.md
|
||||
- Komga: recipes/komga.md
|
||||
- Linx: recipes/linx.md
|
||||
- Mealie: recipes/mealie.md
|
||||
- Minio: recipes/minio.md
|
||||
- OpenLDAP: recipes/openldap.md
|
||||
- OwnTracks: recipes/owntracks.md
|
||||
@@ -254,11 +255,11 @@ markdown_extensions:
|
||||
- toc:
|
||||
permalink: true
|
||||
- footnotes
|
||||
- pymdownx.critic
|
||||
- pymdownx.arithmatex
|
||||
- pymdownx.betterem:
|
||||
smart_enable: all
|
||||
- pymdownx.caret
|
||||
- pymdownx.critic
|
||||
- pymdownx.details
|
||||
- pymdownx.snippets:
|
||||
check_paths: true
|
||||
|
||||
Reference in New Issue
Block a user