One of Raytha's missions is to keep as minimal as a deployment footprint as possible. With that said, here are the dependencies to deploy Raytha.
Required dependencies
Postgres for the database
SMTP for email (can deploy without it, but needed for password resets, etc).
Optional dependencies
File storage defaults to local storage, but can configure Azure Blob or S3
Running raytha via docker
Pull the docker image from Docker Hub
docker pull raythahq/raythaCreate your database in postgres
Set your connection string environment variable to point to the database
ConnectionStrings__DefaultConnection=...Your postgres connection stringView all available environment variables, including if you wish to set the local file storage directory, or use a storage provider such as Azure Blob or S3-compatible, and also receive emails for password retrieval and other functionality.
Run with command
docker run -p 8080:8080 --env-file your-env-fileRun at a different path base
Raytha allows you to specify a custom path base route by setting the optional PATHBASE environment variable. This is particularly useful if you have multiple web applications running on a single domain, being routed to via proxy like nginx, or multiple Raytha websites running on the same domain.
For instance, let's say you are running an annual conference for your association and you want to keep the content of previous years' conferences intact while dedicating a separate website for the current year's conference. You might want a configuration that looks like this:
Each route would represent a separate instance of Raytha. You can achieve this by setting the PATHBASE environment variable to /2023, /2024, and /2025 respectively.