diff --git a/docs/deployment/installation.md b/docs/deployment/installation.md index 84292df2..35078d78 100644 --- a/docs/deployment/installation.md +++ b/docs/deployment/installation.md @@ -38,18 +38,36 @@ manual [installation packages](https://github.com/OpenAEV-Platform/openaev/relea OpenAEV can be deployed using the *docker compose* command. +!!! tip "Podman as an alternative" + + [Podman](https://podman.io/) is a drop-in replacement for Docker that does not require a daemon and can run containers rootless. Most `docker` and `docker compose` commands translate directly to `podman` and `podman compose` equivalents. If you prefer Podman or face [Docker Desktop licensing constraints](https://docs.docker.com/subscription/desktop-license/), you can substitute `podman` wherever `docker` is used in this guide. + ### Pre-requisites **:material-linux:{ .middle } Linux** -```bash -sudo apt install docker-compose -``` +=== "Docker" + + ```bash + sudo apt install docker-compose + ``` + +=== "Podman" + + ```bash + sudo apt install podman podman-compose + ``` **:material-microsoft-windows:{ .middle } Windows and MacOS** -Just download the appropriate [Docker for Desktop](https://www.docker.com/products/docker-desktop) version for your -operating system. +=== "Docker" + + Download the appropriate [Docker Desktop](https://www.docker.com/products/docker-desktop) version for your + operating system. + +=== "Podman" + + Download [Podman Desktop](https://podman-desktop.io/) for your operating system. Podman Desktop provides a graphical interface and manages the Podman machine automatically. ### Clone the repository @@ -80,6 +98,10 @@ sudo systemctl start docker.service docker compose up -d ``` +!!! tip "Using Podman" + + If you are using Podman, replace `docker compose` with `podman compose` and skip the `systemctl start docker.service` step (Podman does not require a daemon). + !!! success "Installation done" You can now navigate to [http://localhost:8080](http://localhost:8080/) and log in with the credentials filled in your configuration. diff --git a/docs/development/build-from-source.md b/docs/development/build-from-source.md index 2a392e5c..2b691263 100644 --- a/docs/development/build-from-source.md +++ b/docs/development/build-from-source.md @@ -43,6 +43,10 @@ cp ./openaev-api/src/main/resources/application.properties ./openaev-api/src/mai Preconfigured containers for all the needed support containers (PostgreSQL, MinIO, RabbitMQ, Elasticsearch...) can be found as a docker compose file in `./openaev/openaev-dev`. +!!! tip "Using Podman" + + If you use [Podman](https://podman.io/) instead of Docker, replace `docker compose` with `podman compose` in the commands below. All compose files are fully compatible with Podman. See the [Ubuntu prerequisites](environment-ubuntu.md) for installation instructions. + Create a file a this location: `./openaev/openaev-dev/.env` and populate it with a minimal set of keys: ```shell POSTGRES_USER=openaev diff --git a/docs/development/environment-ubuntu.md b/docs/development/environment-ubuntu.md index 73b9628a..a497017e 100644 --- a/docs/development/environment-ubuntu.md +++ b/docs/development/environment-ubuntu.md @@ -5,7 +5,21 @@ ```shell apt-get update && apt-get install git openjdk-21-jdk maven ``` -* Docker Engine: follow the official instructions at [Install Docker Engine on Ubuntu](https://docs.docker.com/engine/install/ubuntu/). +* A container runtime is required to run development dependency containers (PostgreSQL, MinIO, RabbitMQ, Elasticsearch). Install **one** of the following: + +=== "Docker Engine" + + Follow the official instructions at [Install Docker Engine on Ubuntu](https://docs.docker.com/engine/install/ubuntu/). + +=== "Podman" + + [Podman](https://podman.io/) is a daemonless, rootless alternative to Docker. Most `docker` commands translate directly to `podman`. + + ```shell + apt-get update && apt-get install podman podman-compose + ``` + + 💡 Podman provides a Docker-compatible CLI. All `docker compose` commands used in the [build from source](build-from-source.md) guide can be replaced with `podman compose`. ## Frontend * yarn via `apt-get` @@ -22,4 +36,4 @@ Then install and set as default Node.js 22 (you should be able to use any versio ```shell nvm install 22 nvm use 22 -``` \ No newline at end of file +```