Requirements
The short version: a Linux machine with a reasonably current Docker. Here’s the longer one.
The host
Section titled “The host”You need Linux with Docker Engine 24 or newer (Docker API 1.43 or newer). Unraid 6.12 and 7.x work, and so does any other distribution. The CPU can be x86_64 or arm64 - a Raspberry Pi 4 or 5, an Ampere or Graviton server or Apple Silicon running Linux are all fine, because every Envoryx image is built for both.
Envoryx talks to Docker through the Docker socket (/var/run/docker.sock). That’s how it
starts and stops your project containers. It only ever touches things it labelled itself
(envoryx.managed=true), so the other containers on the machine stay yours.
How much CPU and memory you need isn’t really about Envoryx - it’s a small Go binary. It’s about your projects, since each one brings its own web server, runtime, database and services. If you want to keep a single project from eating the whole machine, set resource limits.
Folders
Section titled “Folders”Envoryx works with two folders, plus an optional third:
| Inside the container | What goes there |
|---|---|
/config |
Envoryx’s own state: its SQLite database, generated configuration, certificates, SSH keys, caches, logs. |
/projects |
Your projects, one folder each. |
/backups |
Optional. If you mount it, project backups go here instead of /config/backups. |
/config has to be on a local filesystem. On NFS or SMB, SQLite can corrupt its database
without telling anyone, so Envoryx refuses to start there.
There’s one more detail that explains an occasional red notice at the top of the dashboard. The project
containers get your files through Docker bind mounts, and Docker resolves those paths on the
host, not inside the Envoryx container. So Envoryx looks at its own container to find out
which host folders sit behind /projects and /config. If that ever fails, the notice tells
you, and you set ENVORYX_PROJECTS_HOST_PATH and ENVORYX_CONFIG_HOST_PATH to the host paths
yourself.
| Port | What it’s for |
|---|---|
8787 |
The web UI and the API. |
80 / 443 |
The built-in reverse proxy, so projects get names like https://shop.test. Optional; any free host ports work. |
2222 |
The built-in SSH server for IDE remote interpreters and SFTP. Optional. |
20000-20999 |
Project ports: web servers, application servers, database ports and so on. |
You don’t map the project ports on the Envoryx container - the project containers publish them
themselves. If that range clashes with something else, move it with ENVORYX_PORT_RANGE_START
and ENVORYX_PORT_RANGE_END.