This repository provides the official froxlor container image for Docker, Kubernetes, and other container platforms.
Note
This container image is currently in development and is not yet recommended for production use. It contains the latest development version of froxlor.
If you want to install froxlor directly on a bare-metal or virtual server, use the main froxlor repository.
The following example starts a minimal froxlor container using Docker Compose.
Tip
Check the developer guide for information on setting up a development environment.
Create a docker-compose.yml file:
services:
froxlor:
image: hub.froxlor.io/froxlor/froxlor:latest
restart: unless-stopped
privileged: true
pid: "host"
ports:
- "8000:8000"Start the container:
docker compose up -dOpen froxlor in your browser:
http://localhost:8000
The following example includes environment variables and a persistent volume.
services:
froxlor:
image: hub.froxlor.io/froxlor/froxlor:latest
restart: unless-stopped
privileged: true
pid: "host"
environment:
FROXLOR_DB_CONNECTION: mariadb
FROXLOR_DB_HOST: db
FROXLOR_DB_PORT: 3306
FROXLOR_DB_DATABASE: froxlor
FROXLOR_DB_USERNAME: froxlor
FROXLOR_DB_PASSWORD: CHANGEM3
ports:
- "8000:8000"
volumes:
- froxlor:/var/www/html/froxlor
volumes:
froxlor:Warning
The extended example uses privileged: true and pid: "host".
These options grant the container elevated host access and is required to use the host as local node.
Some froxlor features require elevated host access. Running the container without privileged and pid: "host" may disable functionality that depends on local node management.
To run the container without privileged host access, remove these lines from your docker-compose.yml:
privileged: true
pid: "host"When privileged host access is disabled:
- Local node management will be disabled.
- Features that require direct host-level access may not work.
- To continue managing services remotely, install and configure the froxlor Remote Adapter package.
For production deployments, consider the following recommendations:
-
Use persistent volumes Store froxlor data outside the container to prevent data loss during container recreation.
-
Use a reverse proxy Place froxlor behind a reverse proxy such as Caddy, Nginx, or Traefik.
-
Enable HTTPS Secure all browser-to-panel communication with TLS.
-
Pin image versions Avoid using the
latesttag in production. Use a specific image version once stable tags are available. -
Review privileged access Only run the container with privileged host access when your deployment explicitly requires it.
This project is licensed under the GNU Lesser General Public License v2.1.
See the LICENSE file for details.