Docker & Self-Hosted Deployment

Last updated 30 October 2026

Overview

AVS Restaurant POS is built from the ground up to be offline-first and self-hosted. Your business data, customer records, sales invoices, and menu items remain entirely inside your restaurant’s local premises. No ongoing cloud subscription or third-party dependency is required.

Quickstart with Docker Compose

Ensure Docker Engine and Compose v2 are installed on your host system (Ubuntu, Debian, macOS, or Windows WSL2). Clone the official repository and start the stack with one command:

# 1. Clone the repository
git clone https://github.com/arivahly/avs-restaurant-pos.git
cd avs-restaurant-pos

# 2. Run the automated installer (generates secrets and starts the containers)
chmod +x install.sh
./install.sh

Once initial startup completes, open your browser at http://localhost:1995. Register your master administrator account at /signup.

Docker Container Architecture

The production Compose stack isolates services into dedicated lightweight containers:

  • avs-pos-web — Next.js frontend running on port 1995 with server-side rendering and local API routing.
  • avs-pos-backend — NestJS microservice running the core billing engine, Socket.IO websockets, printer spoolers, and audit loggers.
  • avs-pos-postgres — PostgreSQL 16 database running on an isolated internal bridge network with automated schema migrations.
  • avs-pos-updater — Dedicated one-click safe update sidecar that manages rolling version updates with zero data loss.

Key Environment Variables

All runtime configuration is managed via your root .env file:

# Port configuration
HOST_PORT=1995
PORT=4000

# Security (generated automatically by install.sh)
JWT_SECRET=super_secret_high_entropy_jwt_key_min_32_characters
POSTGRES_PASSWORD=strong_database_password_here

# Hardware & Print Service
PRINTER_USB_VENDOR_ID=0x04b8
PRINTER_USB_PRODUCT_ID=0x0e28

# Cloud Backup (Optional - Settings > Backups)
S3_BACKUP_BUCKET=avs-pos-backups
S3_BACKUP_ENDPOINT=https://s3.amazonaws.com

CasaOS / ZimaOS 1-Click Install

AVS Restaurant POS includes native CasaOS / ZimaOS app store integration. Import the provided casaos/docker-compose.yml file into the CasaOS App Store dashboard to enjoy single-click deployment with automated container restarts.