Skip to main content
Noxus provides a robust, single-node deployment path using Docker Compose, managed by a system service for high availability and health monitoring.

System Architecture

The VM deployment is built on three core layers:
  1. systemd: A systemctl service manages the overall lifecycle of the Noxus stack.
  2. Docker Compose: Orchestrates the containerized services (Frontend, Backend, Workers, etc.).
  3. supervisord: Manages process-level execution, health checks, and automatic restarts within the environment.

Hardware Guidelines

For a production-grade VM deployment, we recommend the following minimum specifications:
ResourceRecommendedMinimum
vCPU8 vCPU4 vCPU
RAM32 GiB16 GiB
Storage500 GiB SSD250 GiB SSD
All dependencies are either included in the pre-built image or automatically downloaded and installed during the setup process.

Deployment Modes

You can deploy Noxus on a VM using two primary methods, both supported by our noxus-infra repository.

Component Configuration

Optional Services

The VM stack is modular. You can choose to run the following services within the VM or connect to external managed instances:
  • PostgreSQL: Optional (can use external RDS/Cloud SQL).
  • Redis: Optional (can use external Elasticache/MemoryStore).
  • Nginx: Optional, but ideally runs directly on the host for simplicity and better performance as a reverse proxy.

Security Warning

Do not expose Redis to the outside world. If you are running Redis inside the VM, ensure it is only accessible via the local bridge network or bound to 127.0.0.1. Exposing Redis ports (default 6379) to the public internet is a significant security risk.

Operations & Maintenance

  • Service Management: Use systemctl status noxus to check the health of the entire stack.
  • Logs: Access service logs via journalctl -u noxus or through the Docker Compose logs.
  • Environment: All core configuration is managed via the /env.vm file.