mirror of
https://github.com/mealie-recipes/mealie.git
synced 2025-12-13 13:55:23 -05:00
docs: update dev docs, fix broken links, improve clarity of key points (#2354)
* Dev docs: tests, postgres/psycog2 * Update pull request process. * Add Food/Unit parsing instructions to the FAQ * Update docker composes: mealie-data now local to docker-compose rather than hidden in docker volume dir! postgres points to 1.0.0b5 * sqlite docker-compose: mealie-data now local rather than hidden in docker volumes * Merge Intro FAQ into main FAQ * Progress on docs * Add Advanced and v1b5 to docs index * v1b5 changelog consistency with other changelogs * Features: fix wrong link, name buttons for clarity * Migration: link to github releases * Updating: link to migration page, format docker cmds * FAQ: update smart ingredient formatting * Intro: fix typos * API: update for newbie clarity * Roadmap: update feature request & progress mechanism * iOS shortcut: fix broken image links * installation: add SMTP google app passwords * Postgres: add header note on why. * Update Groups doc per Discord discussion * mealie-data back into docker default volume path
This commit is contained in:
@@ -7,6 +7,7 @@ To install Mealie on your server there are a few steps for proper configuration.
|
||||
|
||||
- [SQLite docker-compose](./sqlite.md)
|
||||
- [Postgres docker-compose](./postgres.md)
|
||||
- [Single container docker-compose](./single-container.md)
|
||||
|
||||
## Pre-work
|
||||
|
||||
@@ -27,12 +28,15 @@ To deploy mealie on your local network it is highly recommended to use docker to
|
||||
|
||||
|
||||
## Step 1: Deployment Type
|
||||
SQLite is a popular, open source, self-contained, zero-configuration database that is the ideal choice for Mealie when you have 1-20 Users and your concurrent write operations will be some-what limited. If you need to support many concurrent users, you may want to consider a more robust database such as PostgreSQL.
|
||||
SQLite is a popular, open source, self-contained, zero-configuration database that is the ideal choice for Mealie when you have 1-20 Users and your concurrent write operations will be some-what limited.
|
||||
|
||||
PostgreSQL might be considered if you need to support many concurrent users. In addition, some features are only enabled on PostgreSQL, such as fuzzy search.
|
||||
|
||||
You can find the relevant ready to use docker-compose files for supported installations at the links below.
|
||||
|
||||
- [SQLite](./sqlite.md)
|
||||
- [PostgreSQL](./postgres.md)
|
||||
- [Single container](./single-container.md)
|
||||
|
||||
## Step 2: Setting up your files.
|
||||
|
||||
@@ -40,17 +44,17 @@ The following steps were tested on a Ubuntu 20.04 server, but should work for mo
|
||||
|
||||
|
||||
1. SSH into your server and navigate to the home directory of the user you want to run Mealie as. If that is your current user, you can use `cd ~` to ensure you're in the right directory.
|
||||
2. Create a directory called `docker` and navigate into it. `mkdir docker && cd docker`
|
||||
3. Do the same for mealie `mkdir mealie && cd mealie`
|
||||
4. Create a docker-compose.yaml file in the mealie directory. `touch docker-compose.yaml`
|
||||
5. Use the text editor or your choice to edit the file and copy the contents of the docker-compose template for the deployment type you want to use. `nano docker-compose.yaml` or `vi docker-compose.yaml`
|
||||
2. Create a directory called `docker` and navigate into it: `mkdir docker && cd docker` (this is optional, if you organizer your docker installs separate from everything else)
|
||||
3. Do the same for mealie: `mkdir mealie && cd mealie`
|
||||
4. Create a docker-compose.yaml file in the mealie directory: `touch docker-compose.yaml`
|
||||
5. Use the text editor or your choice to edit the file and copy the contents of the docker-compose template for the deployment type you want to use: `nano docker-compose.yaml` or `vi docker-compose.yaml`
|
||||
|
||||
|
||||
## Step 2: Customizing The `docker-compose.yaml` files.
|
||||
After you've decided setup the files it's important to set a few ENV variables to ensure that you can use all the features of Mealie. I recommend that you verify and check that:
|
||||
|
||||
- [x] You've configured the relevant ENV variables for your database selection in the `docker-compose.yaml` files.
|
||||
- [x] You've configured the [SMTP server settings](./backend-config.md#email) (used for invitations, password resets, etc)
|
||||
- [x] You've configured the [SMTP server settings](./backend-config.md#email) (used for invitations, password resets, etc). You can setup a [google app password](https://support.google.com/accounts/answer/185833?hl=en) if you want to send email via gmail.
|
||||
- [x] Verified the port mapped on the `mealie-frontend` container is an open port on your server (Default: 9925)
|
||||
- [x] You've set the [`BASE_URL`](./backend-config.md#general) variable.
|
||||
- [x] You've set the `DEFAULT_EMAIL` and `DEFAULT_GROUP` variable.
|
||||
@@ -105,5 +109,5 @@ While the docker-compose file should work without modification, some users want
|
||||
In the diagram above there's a few crucial things to note.
|
||||
|
||||
1. Port 9925 is the host port, this can be anything you want. The important part is that it's mapped to the mealie-frontend container at port 3000.
|
||||
2. The mealie-frontend container communicated with the mealie-api container through the INTERNAL docker network. This requires that the two containers are on the same network and that the network supports name resolution (anything but the default bridge network). The resolution URL can be specified in the docker-compose as the `API_URL` environment variable.
|
||||
2. The mealie-frontend container communicated with the mealie-api container through the INTERNAL docker network. This requires that the two containers are on the same network and that the network supports name resolution (anything but the default bridge network). The resolution URL can be specified in the docker-compose as the `API_URL` environment variable. The API_URL must match the network name of the mealie-backend container, which should be the same as the container name (e.g. a container renamed to `my-api` should have an `API_URL` set to `http://my-api:<backend port, default 9000`)
|
||||
3. The mealie-data volume is mounted to BOTH the mealie-frontend and mealie-api containers. This is REQUIRED to ensure that images and assets are served up correctly. While the default configuration is a docker-volume, that same can be accomplished by using a local directory mounted to the containers.
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Installing with PostgreSQL
|
||||
|
||||
PostgreSQL might be considered if you need to support many concurrent users. In addition, some features are only enabled on PostgreSQL, such as fuzzy search.
|
||||
|
||||
**For Environmental Variable Configuration See:**
|
||||
|
||||
- [Frontend Configuration](./frontend-config.md)
|
||||
@@ -10,7 +12,7 @@
|
||||
version: "3.7"
|
||||
services:
|
||||
mealie-frontend:
|
||||
image: hkotel/mealie:frontend-v1.0.0beta-4
|
||||
image: hkotel/mealie:frontend-v1.0.0beta-5
|
||||
container_name: mealie-frontend
|
||||
depends_on:
|
||||
- mealie-api
|
||||
@@ -23,7 +25,7 @@ services:
|
||||
volumes:
|
||||
- mealie-data:/app/data/ # (3)
|
||||
mealie-api:
|
||||
image: hkotel/mealie:api-v1.0.0beta-4
|
||||
image: hkotel/mealie:api-v1.0.0beta-5
|
||||
container_name: mealie-api
|
||||
deploy:
|
||||
resources:
|
||||
@@ -56,7 +58,7 @@ services:
|
||||
image: postgres
|
||||
restart: always
|
||||
volumes:
|
||||
- mealie-pgdata:/var/lib/postgresql/data
|
||||
- ./mealie-pgdata:/var/lib/postgresql/data
|
||||
environment:
|
||||
POSTGRES_PASSWORD: mealie
|
||||
POSTGRES_USER: mealie
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Using the Omni Image
|
||||
|
||||
Since [#1948](https://github.com/hay-kot/mealie/pull/1948) we've started publishing an experimental image that merges both the frontend and backend services into a single container image. This image is currently in an experimental state, and should be used with caution. Continued support for this image will be based on user feedback and demand, if you're using this image please let us know how it's working for you.
|
||||
Since [#1948](https://github.com/hay-kot/mealie/pull/1948) we've started publishing an experimental image that merges both the frontend and backend services into a single container image. This image is currently in an experimental state, and should be used with caution. Continued support for this image will be based on user feedback and demand, if you're using this image please let us know how it's working for you. The single container comes with SQLite, and can be used with PostgreSQL by adding a postgres container to the docker-compose file (see the [PostgreSQL install](./postgres.md) for a snippet).
|
||||
|
||||
- [Feedback Discussion](https://github.com/hay-kot/mealie/discussions/1949)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user