diff --git a/docs/tech/installation/overview.md b/docs/tech/installation/overview.md index 9ca97542f0e627bc7b30e09f0292d9fad59bbfd1..0382041f6353b826837b1c4e221a0936885681c1 100644 --- a/docs/tech/installation/overview.md +++ b/docs/tech/installation/overview.md @@ -13,7 +13,7 @@ you can refer to the [architecture overview](../architecture/overview.md) in the Before you begin, ensure that you have the following: -* A server with at least 1 core CPU and 4 GB RAM +* A server with at least 2 core CPU and 4 GB RAM * A 64-bit x86 architecture * Root or sudo access to the server * Approximately 0.5 GB of disk space for both the platform and files needed for exercises @@ -24,14 +24,15 @@ These requirements ensure that the backend server can handle data processing eff * Linux operating system: Debian 11 or 12 is recommended * [Docker Engine](https://docs.docker.com/engine/install/). -* [Docker Compose](https://docs.docker.com/compose/install/linux/) with recomended version v2.27.0 +* [Docker Compose](https://docs.docker.com/compose/install/linux/) with recommended version v2.27.0 Make sure to install Docker and Docker Compose before proceeding with the installation. ## Installation (Docker) -Start with choosing Docker Compose preset [https](./https/base-setup.md) for a TLS certificate by Let's Encrypt, or [https-owncert](./https/owncert.md) for setup with your own certificate. -After chosing one and downloading it continue with downloading backend and frontend source code to the Compose preset folders. +Start with choosing Docker Compose preset [https](./https/base-setup.md) for a TLS certificate by Let's Encrypt, +or [https-owncert](./https/owncert.md) for setup with your own certificate. +After choosing one and downloading it continue with downloading backend and frontend source code to the Compose preset folders. Source code for frontend and backend can be downloaded in these following URLs - [Frontend](https://gitlab.fi.muni.cz/inject/frontend/-/releases) @@ -52,9 +53,15 @@ E.g. `v2.0.0` of the frontend is fully compatible with `v2.0.0` of the backend. ## Conclusion -By following the installation guide, you'll be able to successfully set up and deploy the IXP. After completing the installation, you may download this [Intro Definition](https://gitlab.fi.muni.cz/inject/inject-docs/-/raw/main/files-from-repos/intro-definition.zip?ref_type=heads&inline=false) and try to upload it to test the platform's functionality. +By following the installation guide, you'll be able to successfully set up and deploy the IXP. +After completing the installation, +you may download this [Intro Definition](https://gitlab.fi.muni.cz/inject/inject-docs/-/raw/main/files-from-repos/intro-definition.zip?ref_type=heads&inline=false) +and try to upload it to test the platform's functionality. -If you encounter any bugs, please refer to the [Known Issues and Fixes](../../known-issues.md) page for troubleshooting steps and solutions. If you require further assistance, don't hesitate to report them to us. The [Report issue](../../report-issue.md) page includes instructions on how to report bugs. +If you encounter any bugs, +please refer to the [Known Issues and Fixes](../../known-issues.md) page for troubleshooting steps and solutions. +If you require further assistance, don't hesitate to report them to us. +The [Report issue](../../report-issue.md) page includes instructions on how to report bugs. <div class="navigation" markdown> [← Home](../../index.md){ .md-button } diff --git a/docs/tech/installation/setup.md b/docs/tech/installation/setup.md index be9b69f583b1987e0e56250f899de28d1c6462c9..b4a6c75b402900967c249df011ffbdc657a2b7b3 100644 --- a/docs/tech/installation/setup.md +++ b/docs/tech/installation/setup.md @@ -6,10 +6,11 @@ It also creates a singular endpoint for accessing INJECT Exercise Platform. ### Docker Setup -This solution consists of 4 containers: frontend, backend, database and reverse proxy server. +This solution consists of 5 containers: frontend, backend, redict, database and reverse proxy server. Frontend and Backend are set up to communicate under a single endpoint handled by the reverse-proxy server (Nginx). PostgresSQL database handles management of user/exercise data. +Redict is used to allow multiple workers on the backend. User-uploaded files, images and definition relevant content is stored on the Backend. The reverse-proxy forwards requests either to Frontend or Backend. @@ -123,6 +124,24 @@ INJECT_DB_USER=inject - INJECT_DB_PASS: PostgresSQL user password for which the IXP Backend has to log in to - INJECT_DB_USER: PostgresSQL username for which the IXP Backend has to log in to +#### Redict settings + +``` +INJECT_REDICT_HOST=inject-redict +``` + +- INJECT_REDICT_HOST: Host address where Redict is served. + +#### Backend settings + +``` +INJECT_WORKER_COUNT=4 +``` + +- INJECT_WORKER_COUNT: Number of workers to use for deployment. + If unspecified, uses only 1 worker. + It is recommended to use `2 x CPU_COUNT` number of workers. + ## Good practices At current state it's advised: @@ -132,4 +151,4 @@ At current state it's advised: <div class="navigation" markdown> [← Installation overview](./overview.md){ .md-button } -</div> \ No newline at end of file +</div>