Merge pull request #1377 from MaxJa4/docs/docker-installation
Enhancement of installation instruction docs
This commit is contained in:
commit
9fcfa17004
@ -1,12 +1,12 @@
|
||||
!!! success "Recommended Installation"
|
||||
Setting up this application using Docker is recommended. This does not mean that other options are bad, just that
|
||||
support is much easier for this setup.
|
||||
Setting up this application using Docker is recommended. This does not mean that other options are bad, just that
|
||||
support is much easier for this setup.
|
||||
|
||||
It is possible to install this application using many Docker configurations.
|
||||
It is possible to install this application using many different Docker configurations.
|
||||
|
||||
Please read the instructions/notes on each example carefully and decide if this is the way for you.
|
||||
Please read the instructions on each example carefully and decide if this is the way for you.
|
||||
|
||||
## Docker
|
||||
## **Docker**
|
||||
|
||||
The docker image (`vabene1111/recipes`) simply exposes the application on the container's port `8080`.
|
||||
|
||||
@ -32,75 +32,84 @@ Please make sure, if you run your image this way, to consult
|
||||
the [.env.template](https://raw.githubusercontent.com/vabene1111/recipes/master/.env.template)
|
||||
file in the GitHub repository to verify if additional environment variables are required for your setup.
|
||||
|
||||
### Versions
|
||||
Also, don't forget to replace the placeholders for ```SECRET_KEY``` and ```POSTGRES_PASSWORD```!
|
||||
|
||||
There are different versions (tags) released on docker hub.
|
||||
## **Versions**
|
||||
|
||||
There are different versions (tags) released on [Docker Hub](https://hub.docker.com/r/vabene1111/recipes/tags).
|
||||
|
||||
- **latest** Default image. The one you should use if you don't know that you need anything else.
|
||||
- **beta** Partially stable version that gets updated every now and then. Expect to have some problems.
|
||||
- **develop** If you want the most bleeding edge version with potentially many breaking changes feel free to use this version (I don't recommend it!).
|
||||
- **develop** If you want the most bleeding edge version with potentially many breaking changes feel free to use this version (not recommended!).
|
||||
- **X.Y.Z** each released version has its own image. If you need to revert to an old version or want to make sure you stay on one specific use these tags.
|
||||
|
||||
!!! danger "No Downgrading"
|
||||
There is currently no way to migrate back to an older version as there is no mechanism to downgrade the database.
|
||||
You could probably do it but I cannot help you with that. Choose wisely if you want to use the unstable images.
|
||||
That said **beta** should usually be working if you like frequent updates and new stuff.
|
||||
There is currently no way to migrate back to an older version as there is no mechanism to downgrade the database.
|
||||
You could probably do it but I cannot help you with that. Choose wisely if you want to use the unstable images.
|
||||
That said **beta** should usually be working if you like frequent updates and new stuff.
|
||||
|
||||
## Docker Compose
|
||||
## **Docker Compose**
|
||||
|
||||
The main, and also recommended, installation option is to install this application using Docker Compose.
|
||||
The main, and also recommended, installation option for this application is Docker Compose.
|
||||
|
||||
1. Choose your `docker-compose.yml` from the examples below.
|
||||
2. Download the `.env` configuration file with `wget`, then **edit it accordingly** (you NEED to set `SECRET_KEY` and `POSTGRES_PASSWORD`).
|
||||
```shell
|
||||
wget https://raw.githubusercontent.com/vabene1111/recipes/develop/.env.template -O .env
|
||||
```
|
||||
3. Start your container using `docker-compose up -d`.
|
||||
2. Download the `.env` configuration file with `wget`
|
||||
```shell
|
||||
wget https://raw.githubusercontent.com/vabene1111/recipes/develop/.env.template -O .env
|
||||
```
|
||||
3. **Edit it accordingly** (you NEED to set `SECRET_KEY` and `POSTGRES_PASSWORD`).
|
||||
4. Start your container using `docker-compose up -d`.
|
||||
|
||||
### Plain
|
||||
### **Plain**
|
||||
|
||||
This configuration exposes the application through an nginx web server on port 80 of your machine.
|
||||
This configuration exposes the application through a containerized nginx web server on port 80 of your machine.
|
||||
Be aware that having some other web server or container running on your host machine on port 80 will block this from working.
|
||||
|
||||
```shell
|
||||
wget https://raw.githubusercontent.com/vabene1111/recipes/develop/docs/install/docker/plain/docker-compose.yml
|
||||
```
|
||||
|
||||
```yaml
|
||||
{ % include "./docker/plain/docker-compose.yml" % }
|
||||
```
|
||||
~~~yaml
|
||||
{% include "./docker/plain/docker-compose.yml" %}
|
||||
~~~
|
||||
|
||||
### Reverse Proxy
|
||||
!!!note
|
||||
Don't forget to [download and configure](#docker-compose) your ```.env``` file!
|
||||
|
||||
### **Reverse Proxy**
|
||||
|
||||
Most deployments will likely use a reverse proxy.
|
||||
|
||||
If your reverse proxy is not listed here, please refer to [Others](https://docs.tandoor.dev/install/docker/#others).
|
||||
If your reverse proxy is not listed below, please refer to chapter [Others](#others).
|
||||
|
||||
#### Traefik
|
||||
#### **Traefik**
|
||||
|
||||
If you use traefik, this configuration is the one for you.
|
||||
If you use Traefik, this configuration is the one for you.
|
||||
|
||||
!!! info
|
||||
Traefik can be a little confusing to setup.
|
||||
Please refer to [their excellent documentation](https://doc.traefik.io/traefik/). If that does not help,
|
||||
[this little example](traefik.md) might be for you.
|
||||
Traefik can be a little confusing to setup.
|
||||
Please refer to [their excellent documentation](https://doc.traefik.io/traefik/). If that does not help,
|
||||
[this little example](traefik.md) might be for you.
|
||||
|
||||
```shell
|
||||
wget https://raw.githubusercontent.com/vabene1111/recipes/develop/docs/install/docker/traefik-nginx/docker-compose.yml
|
||||
```
|
||||
|
||||
```yaml
|
||||
{ % include "./docker/traefik-nginx/docker-compose.yml" % }
|
||||
```
|
||||
~~~yaml
|
||||
{% include "./docker/traefik-nginx/docker-compose.yml" %}
|
||||
~~~
|
||||
|
||||
#### nginx-proxy
|
||||
!!!note
|
||||
Don't forget to [download and configure](#docker-compose) your ```.env``` file!
|
||||
|
||||
#### **nginx-proxy**
|
||||
|
||||
This is a docker compose example using [jwilder's nginx reverse proxy](https://github.com/jwilder/docker-gen)
|
||||
in combination with [jrcs's letsencrypt companion](https://hub.docker.com/r/jrcs/letsencrypt-nginx-proxy-companion/).
|
||||
|
||||
Please refer to the appropriate documentation on how to setup the reverse proxy and networks.
|
||||
|
||||
Remember to add the appropriate environment variables to `.env` file:
|
||||
Remember to add the appropriate environment variables to the `.env` file:
|
||||
|
||||
```
|
||||
VIRTUAL_HOST=
|
||||
@ -112,11 +121,14 @@ LETSENCRYPT_EMAIL=
|
||||
wget https://raw.githubusercontent.com/vabene1111/recipes/develop/docs/install/docker/nginx-proxy/docker-compose.yml
|
||||
```
|
||||
|
||||
```yaml
|
||||
{ % include "./docker/nginx-proxy/docker-compose.yml" % }
|
||||
```
|
||||
~~~yaml
|
||||
{% include "./docker/nginx-proxy/docker-compose.yml" %}
|
||||
~~~
|
||||
|
||||
#### Nginx Swag by LinuxServer
|
||||
!!!note
|
||||
Don't forget to [download and configure](#docker-compose) your ```.env``` file!
|
||||
|
||||
#### **Nginx Swag by LinuxServer**
|
||||
|
||||
[This container](https://github.com/linuxserver/docker-swag) is an all in one solution created by LinuxServer.io.
|
||||
|
||||
@ -140,15 +152,18 @@ Please refer to the [appropriate documentation](https://github.com/linuxserver/d
|
||||
|
||||
For step-by-step instructions to set this up from scratch, see [this example](swag.md).
|
||||
|
||||
### Others
|
||||
#### **Others**
|
||||
|
||||
If you use none of the above mentioned reverse proxies or want to use an existing one on your host machine (like a local nginx or Caddy), simply use the [PLAIN](https://docs.tandoor.dev/install/docker/#plain) setup above and change the outbound port to one of your liking.
|
||||
If you use none of the above mentioned reverse proxies or want to use an existing one on your host machine (like a local nginx or Caddy), simply use the [Plain](#plain) setup above and change the outbound port to one of your liking.
|
||||
|
||||
An example port config (inside the respective docker-compose.yml) would be: `8123:80` instead of the `80:80` or if you want to be sure, that Tandoor is **just** accessible via your proxy and don't wanna bother with your firewall, then `127.0.0.1:8123:80` is a viable option too.
|
||||
|
||||
## Additional Information
|
||||
!!!note
|
||||
Don't forget to [download and configure](#docker-compose) your ```.env``` file!
|
||||
|
||||
### Nginx vs Gunicorn
|
||||
## **Additional Information**
|
||||
|
||||
### **Nginx vs Gunicorn**
|
||||
|
||||
All examples use an additional `nginx` container to serve mediafiles and act as the forward facing webserver.
|
||||
This is **technically not required** but **very much recommended**.
|
||||
@ -158,20 +173,20 @@ the WSGi server that handles the Python execution, explicitly state that it is n
|
||||
You will also likely not see any decrease in performance or a lot of space used as nginx is a very light container.
|
||||
|
||||
!!! info
|
||||
Even if you run behind a reverse proxy as described above, using an additional nginx container is the recommended option.
|
||||
Even if you run behind a reverse proxy as described above, using an additional nginx container is the recommended option.
|
||||
|
||||
If you run a small private deployment and don't care about performance, security and whatever else feel free to run
|
||||
without a ngix container.
|
||||
without a nginx container.
|
||||
|
||||
!!! warning
|
||||
When running without nginx make sure to enable `GUNICORN_MEDIA` in the `.env`. Without it, media files will be uploaded
|
||||
but not shown on the page.
|
||||
When running without nginx make sure to enable `GUNICORN_MEDIA` in the `.env`. Without it, media files will be uploaded
|
||||
but not shown on the page.
|
||||
|
||||
For additional information please refer to the [0.9.0 Release](https://github.com/vabene1111/recipes/releases?after=0.9.0)
|
||||
and [Issue 201](https://github.com/vabene1111/recipes/issues/201) where these topics have been discussed.
|
||||
See also refer to the [official gunicorn docs](https://docs.gunicorn.org/en/stable/deploy.html).
|
||||
|
||||
### Nginx Config
|
||||
### **Nginx Config**
|
||||
|
||||
In order to give the user (you) the greatest amount of freedom when choosing how to deploy this application the
|
||||
webserver is not directly bundled with the Docker image.
|
||||
@ -186,13 +201,14 @@ to the host system and from there into the nginx container.
|
||||
This is not really a clean solution, but I could not find any better alternative that provided the same amount of
|
||||
usability. If you know of any better way, feel free to open an issue.
|
||||
|
||||
### Volumes vs Bind Mounts
|
||||
### **Volumes vs Bind Mounts**
|
||||
|
||||
Since I personally prefer to have my data where my `docker-compose.yml` resides, bind mounts are used in the example
|
||||
configuration files for all user generated data (e.g. Postgresql and media files).
|
||||
|
||||
Please note that [there is a difference in functionality](https://docs.docker.com/storage/volumes/)
|
||||
between the two and you cannot always simply interchange them.
|
||||
!!!warning
|
||||
Please note that [there is a difference in functionality](https://docs.docker.com/storage/volumes/)
|
||||
between the two and you cannot always simply interchange them.
|
||||
|
||||
You can move everything to volumes if you prefer it this way, **but you cannot convert the nginx config file to a bind
|
||||
mount.**
|
||||
|
@ -1,22 +1,26 @@
|
||||
**!!! info "Community Contributed" This guide was contributed by the community and is neither officially supported, nor updated or tested.**
|
||||
!!! info "Community Contributed"
|
||||
This guide was contributed by the community and is neither officially supported, nor updated or tested.
|
||||
|
||||
# K8s Setup
|
||||
## K8s Setup
|
||||
|
||||
This is a setup which should be sufficient for production use. Be sure to replace the default secrets!
|
||||
|
||||
# Files
|
||||
## Files
|
||||
|
||||
## 10-configmap.yaml
|
||||
### 10-configmap.yaml
|
||||
|
||||
The nginx config map. This is loaded as nginx.conf in the nginx sidecar to configure nginx to deliver static content.
|
||||
|
||||
## 15-secrets.yaml
|
||||
### 15-secrets.yaml
|
||||
|
||||
The secrets **replace them!!** This file is only here for a quick start. Be aware that changing secrets after installation will be messy and is not documented here. **You should set new secrets before the installation.** As you are reading this document **before** the installation ;-)
|
||||
!!! warning "Contains secrets"
|
||||
**Replace them!**
|
||||
|
||||
Create your own postgresql passwords and the secret key for the django app
|
||||
This file is only here for a quick start. Be aware that changing secrets after installation will be messy and is not documented here. **You should set new secrets before the installation.** As you are reading this document **before** the installation ;-)
|
||||
|
||||
see also [Managing Secrets using kubectl](https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kubectl/)
|
||||
Create your own postgresql passwords and the secret key for the django app.
|
||||
|
||||
See also [Managing Secrets using kubectl](https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kubectl/)
|
||||
|
||||
**Replace** `db-password`, `postgres-user-password` and `secret-key` **with something - well - secret :-)**
|
||||
|
||||
@ -35,37 +39,37 @@ kubectl create secret generic recipes \
|
||||
--from-file=secret-key=./secret-key.txt
|
||||
~~~
|
||||
|
||||
## 20-service-account.yml
|
||||
### 20-service-account.yml
|
||||
|
||||
Creating service account `recipes` for deployment and stateful set.
|
||||
|
||||
## 30-pvc.yaml
|
||||
### 30-pvc.yaml
|
||||
|
||||
The creation of the persistent volume claims for media and static content. May you want to increase the size. This expects to have a storage class installed.
|
||||
|
||||
## 40-sts-postgresql.yaml
|
||||
### 40-sts-postgresql.yaml
|
||||
|
||||
The PostgreSQL stateful set, based on a bitnami image. It runs a init container as root to do the preparations. The postgres container itself runs as a lower privileged user. The recipes app uses the database super user (postgres) as the recipes app is doing some db migrations on startup, which needs super user privileges.
|
||||
|
||||
## 45-service-db.yaml
|
||||
### 45-service-db.yaml
|
||||
|
||||
Creating the database service.
|
||||
|
||||
## 50-deployment.yaml
|
||||
### 50-deployment.yaml
|
||||
|
||||
The deployment first fires up a init container to do the database migrations and file modifications. This init container runs as root. The init container runs part of the [boot.sh](https://github.com/TandoorRecipes/recipes/blob/develop/boot.sh) script from the `vabene1111/recipes` image.
|
||||
|
||||
The deployment then runs two containers, the recipes-nginx and the recipes container which runs the gunicorn app. The nginx container gets it's nginx.conf via config map to deliver static content `/static` and `/media`. The guincorn container gets it's secret key and the database password from the secret `recipes`. `gunicorn` runs as user `nobody`.
|
||||
|
||||
## 60-service.yaml
|
||||
### 60-service.yaml
|
||||
|
||||
Creating the app service.
|
||||
|
||||
## 70-ingress.yaml
|
||||
### 70-ingress.yaml
|
||||
|
||||
Setting up the ingress for the recipes service. Requests for static content `/static` and `/media` are send to the nginx container, everything else to gunicorn. TLS setup via cert-manager is prepared. You have to **change the host** from `recipes.local` to your specific domain.
|
||||
|
||||
# Conclusion
|
||||
## Conclusion
|
||||
|
||||
All in all:
|
||||
|
||||
@ -80,16 +84,16 @@ I tried the setup with [kind](https://kind.sigs.k8s.io/) and it runs well on my
|
||||
|
||||
There is a warning, when you check your system as super user:
|
||||
|
||||
**Media Serving Warning**
|
||||
Serving media files directly using gunicorn/python is not recommend! Please follow the steps described here to update your installation.
|
||||
!!! warning "Media Serving Warning"
|
||||
Serving media files directly using gunicorn/python is not recommend! Please follow the steps described here to update your installation.
|
||||
|
||||
I don't know how this check works, but this warning is simply wrong! ;-) Media and static files are routed by ingress to the nginx container - I promise :-)
|
||||
|
||||
# Updates
|
||||
## Updates
|
||||
|
||||
These manifests are tested against Release 1.0.1. Newer versions may not work without changes.
|
||||
|
||||
# Apply the manifets
|
||||
## Apply the manifets
|
||||
|
||||
To apply the manifest with kubectl, use the following command:
|
||||
|
||||
|
@ -21,25 +21,29 @@ Create virtual env: `python3.9 -m venv /var/www/recipes`
|
||||
|
||||
Install Javascript Tools
|
||||
```shell
|
||||
apt install nodejs
|
||||
npm install --global yarn
|
||||
sudo apt install nodejs
|
||||
sudo npm install --global yarn
|
||||
```
|
||||
|
||||
### Install postgresql requirements
|
||||
|
||||
`sudo apt install libpq-dev postgresql`
|
||||
```shell
|
||||
sudo apt install libpq-dev postgresql
|
||||
```
|
||||
|
||||
###Install project requirements
|
||||
|
||||
!!! warning "Update"
|
||||
Dependencies change with most updates so the following steps need to be re-run with every update or else the application might stop working.
|
||||
See section **Updating** below
|
||||
See section [Updating](#updating) below.
|
||||
|
||||
Using binaries from the virtual env:
|
||||
|
||||
`/var/www/recipes/bin/pip3.9 install -r requirements.txt`
|
||||
```shell
|
||||
/var/www/recipes/bin/pip3.9 install -r requirements.txt
|
||||
```
|
||||
|
||||
You will also need to install front end requirements and build them. For this navigate to the `./vue`folder and run
|
||||
You will also need to install front end requirements and build them. For this navigate to the `./vue` folder and run
|
||||
|
||||
```shell
|
||||
yarn install
|
||||
@ -48,7 +52,9 @@ yarn build
|
||||
|
||||
## Setup postgresql
|
||||
|
||||
`sudo -u postgres psql`
|
||||
```shell
|
||||
sudo -u postgres psql
|
||||
```
|
||||
|
||||
In the psql console:
|
||||
|
||||
@ -73,6 +79,7 @@ wget https://raw.githubusercontent.com/vabene1111/recipes/develop/.env.template
|
||||
```
|
||||
|
||||
Things to edit:
|
||||
|
||||
- `SECRET_KEY`: use something secure.
|
||||
- `POSTGRES_HOST`: probably 127.0.0.1.
|
||||
- `POSTGRES_PASSWORD`: the password we set earlier when setting up djangodb.
|
||||
|
@ -5,19 +5,18 @@ Many people appear to host this application on their Synology NAS. The following
|
||||
@therealschimmi in [this issue discussion](https://github.com/vabene1111/recipes/issues/98#issuecomment-643062907).
|
||||
|
||||
There is also this
|
||||
([word](https://github.com/vabene1111/recipes/files/6708738/Tandoor.on.a.Synology.Disk.Station.docx),
|
||||
([word](https://github.com/vabene1111/recipes/files/6708738/Tandoor.on.a.Synology.Disk.Station.docx),
|
||||
[pdf](https://github.com/vabene1111/recipes/files/6901601/Tandoor.on.a.Synology.Disk.Station.pdf)) awesome and
|
||||
very detailed guide provided by @DiversityBug.
|
||||
|
||||
There are, as always, most likely other ways to do this but this can be used as a starting point for your
|
||||
setup. Since I cannot test it myself feedback and improvements are always very welcome.
|
||||
|
||||
## Instructions
|
||||
## **Instructions**
|
||||
|
||||
Basic guide to setup `vabenee1111/recipes docker` container on Synology NAS
|
||||
|
||||
1. Login to Synology DSM through your browser
|
||||
Basic guide to setup `vabenee1111/recipes` docker container on Synology NAS.
|
||||
|
||||
### 1. Login to Synology DSM through your browser
|
||||
- Install Docker through package center
|
||||
- Optional: Create a shared folder for your docker projects, they have to store data somewhere outside the containers
|
||||
- Create a folder somewhere, I suggest naming it 'recipes' and storing it in the dedicated docker folder
|
||||
@ -25,28 +24,30 @@ Basic guide to setup `vabenee1111/recipes docker` container on Synology NAS
|
||||
|
||||

|
||||
|
||||
2. Download templates
|
||||
- vabene1111 gives you a few samples for various setups to work with. I chose to use the plain setup for now.
|
||||
- Open https://github.com/vabene1111/recipes/tree/develop/docs/install/docker
|
||||
- Download docker-compose.yml to your recipes folder
|
||||
- Open https://github.com/vabene1111/recipes/tree/develop/nginx/conf.d
|
||||
- Download Recipes.conf to your conf.d folder
|
||||
- Open https://github.com/vabene1111/recipes/blob/develop/.env.template
|
||||
- Copy the text and save it as '.env' to your recipes folder (no filename extension!)
|
||||
- Add a POSTGRES_PASSWORD
|
||||
- Once done, it should look like this:
|
||||
### 2. Download templates
|
||||
!!!info
|
||||
vabene1111 gives you a few samples for various setups to work with. I chose to use the plain setup for now.
|
||||
|
||||
* Open https://github.com/vabene1111/recipes/tree/develop/docs/install/docker ([link](https://github.com/vabene1111/recipes/tree/develop/docs/install/docker))
|
||||
* Download docker-compose.yml to your recipes folder ([direct link to plain](https://github.com/TandoorRecipes/recipes/raw/develop/docs/install/docker/plain/docker-compose.yml))
|
||||
* Open https://github.com/vabene1111/recipes/tree/develop/nginx/conf.d ([link](https://github.com/vabene1111/recipes/tree/develop/nginx/conf.d))
|
||||
* Download Recipes.conf to your conf.d folder ([direct link](https://raw.githubusercontent.com/TandoorRecipes/recipes/develop/nginx/conf.d/Recipes.conf))
|
||||
* Open https://github.com/vabene1111/recipes/blob/develop/.env.template ([link](https://github.com/vabene1111/recipes/blob/develop/.env.template))
|
||||
* Copy the text and save it as ```.env``` to your recipes folder (no filename extension!)
|
||||
* Add a ```POSTGRES_PASSWORD```
|
||||
* Once done, it should look like this:
|
||||
|
||||

|
||||
|
||||
3. Edit docker-compose.yml
|
||||
- Open docker-compose.yml in a text editor
|
||||
- This file tells docker how to setup recipes. Docker will create three containers for recipes to work, recipes, nginx and postgresql. They are all required and need to store and share data through the folders you created before.
|
||||
- Edit line 26, this line specifies which external synology port will point to which internal docker port. Chose a free port to use and replace the first number with it. You will open recipes by browsing to http://your.synology.ip:chosen.port, e.g. http://192.168.1.1:2000
|
||||
- If you want to use port 2000 you would edit to 2000:80
|
||||
### 3. Edit docker-compose.yml
|
||||
* Open docker-compose.yml in a text editor
|
||||
* This file tells docker how to setup recipes. Docker will create three containers for recipes to work, recipes, nginx and postgresql. They are all required and need to store and share data through the folders you created before.
|
||||
* Edit line 26, this line specifies which external synology port will point to which internal docker port. Chose a free port to use and replace the first number with it. You will open recipes by browsing to http://your.synology.ip:chosen.port, e.g. http://192.168.1.1:2000
|
||||
* If you want to use port 2000 you would edit to 2000:80
|
||||
|
||||
4. SSH into your Synology
|
||||
### 4. SSH into your Synology
|
||||
- You need to access your Synology through SSH
|
||||
- execute following commands
|
||||
- Execute following commands
|
||||
- `ssh root@your.synology.ip` connect to your synology. root password is the same as admin password, sometimes root access is not possible for whatever reason, then replace root with admin
|
||||
- `cd /volume1/docker/recipes` access the folder where you store docker-compose.yml
|
||||
- `docker-compose up -d` this starts your containers according to your docker-compose.yml. if you logged in with admin you will have to use `sudo docker-compose up -d` instead, it will ask for the admin password again.
|
||||
@ -57,10 +58,10 @@ Creating recipes_nginx_recipes_1 ... done
|
||||
Creating recipes_db_recipes_1 ... done
|
||||
Creating recipes_web_recipes_1 ... done
|
||||
```
|
||||
- Browse to 192.168.1.1:2000 or whatever your IP and port are
|
||||
- While the containers are starting and doing whatever they need to do, you might still get HTTP errors e.g. 500 or 502. Just be patient and try again in a moment
|
||||
* Browse to 192.168.1.1:2000 or whatever your IP and port are
|
||||
* While the containers are starting and doing whatever they need to do, you might still get HTTP errors e.g. 500 or 502. Just be patient and try again in a moment
|
||||
|
||||
5. Firewall
|
||||
### 5. Firewall
|
||||
You need to set up firewall rules in order for the recipes_web container to be able to connect to the recipes_db container.
|
||||
|
||||
- Control Panel -> Security -> Firewall -> Edit Rules -> Create
|
||||
@ -71,8 +72,9 @@ You need to set up firewall rules in order for the recipes_web container to be a
|
||||
- Action: Allow
|
||||
- Save and make sure it's above the deny rules
|
||||
|
||||
6. Additional SSL Setup
|
||||
Easiest way is to do it via Reverse Proxy
|
||||
### 6. Additional SSL Setup
|
||||
Easiest way is to do it via Reverse Proxy.
|
||||
|
||||
- Control Panel -> Login Portal (renamed Since DSM 7, previously Application Portal) -> Advanced -> Reverse Proxy
|
||||
- Create
|
||||
- insert name
|
||||
|
@ -10,18 +10,25 @@ unraid forum where he gives additional information.
|
||||
|
||||
## Installation
|
||||
|
||||
Recipes for unRAID is avialble via Community Applications.
|
||||
You will first need to install Community Applications (CA) by following the directions here:
|
||||
https://forums.unraid.net/topic/38582-plug-in-community-applications/
|
||||
### Install Community Applications
|
||||
|
||||
After that, you can go to the "Apps" tab in unRAID and search for Recipes and locate the Recipes container and install it.
|
||||
Tandoor for unRAID is available via `Community Applications`.
|
||||
You will first need to install `Community Applications (CA)` by following the directions here:
|
||||
[Unraid forums](https://forums.unraid.net/topic/38582-plug-in-community-applications/)
|
||||
|
||||
### Locate and install Tandoor Recipes
|
||||
|
||||
After that, you can go to the "Apps" tab in unRAID and search for `Tandoor Recipes`, locate the correct container and install it.
|
||||

|
||||
|
||||
The default settings should by fine for most users, just be sure to enter a secret key that is randomly generated.
|
||||
Then choose apply.
|
||||
### Configure settings
|
||||
|
||||
The default settings should be fine for most users, just be sure to enter a secret key that is randomly generated.
|
||||
Then click `Apply`.
|
||||

|
||||
|
||||
After the container installs, click on the Recipes icon and click the WebUI button to launch the web user interface.
|
||||
### Access website
|
||||
|
||||
After the container is installed, click on the `Tandoor Recipes` icon and click the WebUI button to launch the web user interface.
|
||||
Set the container to auto-start if you wish.
|
||||

|
||||
|
Loading…
Reference in New Issue
Block a user