Docker
A stable Docker
is produced on every release. An unstable one
is produced nightly whenever the main
branch has new commits.
You can either install the application using Docker or Docker Compose.
Using Docker
You first have to fetch it.
docker pull reaper99/recipya:nightly
Then, run the image. The -e
environment variables are described below.
docker run -d \
--name recipya
--restart unless-stopped
-p 8085:8078 \
-v recipya-data:/root/.config/Recipya \
-e RECIPYA_SERVER_PORT=8078 \
reaper99/recipya:nightly
Recipya can be accessed from your host machine at http://localhost:8085.
Updating your container
Run the command below for a quick update with Watchtower.
Remember to replace recipya
with your actual container name if it differs and to back up your volume data.
docker run --rm --volume /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower --run-once recipya
Synology NAS
The following Docker command should be used if you use Synology.
docker run -d \
--name recipya
--restart unless-stopped
-p 8085:8078 \
-v /shared/path/here:/root/.config/Recipya/:rw \
-e RECIPYA_SERVER_PORT=8078 \
reaper99/recipya:nightly
Using Docker Compose
You can use Docker Compose to run the container. First, download the compose.yaml file.
Modify the environment
and ports
sections. The environment variables are described below. Then, start the application.
docker-compose up -d
Access the app through your browser at http://localhost:[host port]
.
If you are using Windows and you intend to access the app on other devices within your home network, please ensure to
Allow the connection
of the Docker Desktop Backend
inbound Windows Defender Firewall rule.
Updating your container
Follow these steps to update Recipya. Remember to back up your volume data in case something goes south.
- Pull the latest image
docker compose pull
- Recreate the container with the latest image
docker compose up -d
Environment Variables
Variable | Description |
---|---|
RECIPYA_DI_ENDPOINT | The Endpoint variable displayed in the Keys and endpoint tab of your Azure AI Document Intelligence resource in the Azure Portal. Default: "" . |
RECIPYA_DI_KEY | The KEY 1 variable displayed in the Keys and endpoint tab of your Document Intelligence resource in the Azure Portal. Default: "" . |
RECIPYA_EMAIL | The email address of your SendGrid account. Default: "" . |
RECIPYA_EMAIL_SENDGRID | Your SendGrid API key. The free tier should be sufficient for your needs. Default: "" . |
RECIPYA_SERVER_AUTOLOGIN | Whether to login automatically into the application. Can be true or false .Default: false . |
RECIPYA_SERVER_IS_DEMO | Whether the app is a demo version. Can be true or false .Default: false . |
RECIPYA_SERVER_IS_PROD | Whether the app is in production. Can be true or false .Default: false . |
RECIPYA_SERVER_NO_SIGNUPS | Whether to disable user account registrations. Set to true when you don’t want people to create accounts.Default: false . |
RECIPYA_SERVER_PORT | The port the app will be served through if localhost. Is required. |
RECIPYA_SERVER_URL | The website the app is served on. This URL will serve as the base link in the emails. Default: http://0.0.0.0 . |
Back up a Volume
It is of vital importance to back up your volume data before updating the software in case something goes south, and you lose your database.
Docker Desktop
If you use Docker Desktop, then
- Select the
Volumes
tab to the left - Identify the
recipya-data
volume - Click the
Export
action button - Select
Local file
, select the target directory and clickExport
Terminal
Otherwise, run to following command:
docker run --rm --volumes-from recipya -v $(pwd):/backup ubuntu tar cvf /backup/recipya-volume-backup.tar /root/.config/Recipya
Restore Volume from Backup
Let’s say you updated the Docker image and as a result lost your data. Thanks to you having an external backup, the day will be saved.
Docker Desktop
Follow these steps to restore your data using Docker desktop:
- Select the
Volumes
tab to the left - Identify the
recipya-data
volume - Click the
Import
action button - Select the backed up volume and click
Import
Terminal
Otherwise, run the following command:
docker run --rm --volumes-from recipya -v $(pwd):/backup ubuntu bash -c "cd /root && tar xvf /backup/recipya-volume-backup.tar --strip 1"