# Software Requirements

## Operating System <a href="#prerequisites-operatingsystem" id="prerequisites-operatingsystem"></a>

The following table provides a list of the supported operating systems and their versions.

| **Operating System**    | **Version** |
| ----------------------- | ----------- |
| Ubuntu Linux            | 20.04+      |
| CentOS                  | 8.6+        |
| RedHat Enterprise Linux | 8.6+        |

On RHEL systems Akamas containers might need to be run in privileged mode depending on how Docker was installed on the system.

## Software packages <a href="#prerequisites-softwarepackages" id="prerequisites-softwarepackages"></a>

The following table provides a list of the required Software Packages (also referred to as **Akamas dependencies**) together with their versions.

| **Software Package** | **Notes**                                                                                                                                                                                                                                                                                                                      |
| -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Docker               | Akamas is deployed as a set of containerized services running on Docker. During its operation, Akamas launches different containers so access to the docker socket with enough permissions to run the container is required.                                                                                                   |
| Docker Compose       | Akamas containerized services are managed via Docker Compose. Docker compose is usually already shipped with Docker starting from version 23.                                                                                                                                                                                  |
| AWS CLI              | <p>Akamas container images are published in a private Amazon Elastic Container Registry (ECR) and are automatically downloaded during the online installation procedure.</p><p>AWS CLI is required only during the installation phase if the server has internet access and can be skipped during an offline installation.</p> |

The exact version of these prerequisites is listed in the following table:

| **Software Package** | **Version** |
| -------------------- | ----------- |
| Docker               | 24+         |
| Docker Compose       | 2.7.0+      |
| AWS CLI              | 2.0.0+      |

Read more about how to set up [Akamas dependencies](/akamas-docs/installing/docker/install-akamas-dependencies.md).

## Akamas user <a href="#prerequisites-akamasuser" id="prerequisites-akamasuser"></a>

To install and run Akamas it is recommended to create a dedicated user (usually "akamas").\
The Akamas user is not required to be in the sudoers list but can be added to the docker (*dockeroot*) group so it can run docker and docker-compose commands.

Make sure that the Akamas user has the read, write, and execute permissions on `/tmp`. If your environment does not allow writing to the whole `/tmp` folder, please create a folder `/tmp/build` and assign read and write permission to the Akamas user on that folder.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.akamas.io/akamas-docs/installing/docker/prerequisites/software-requirements.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
