Deploy your GQORA server
Self-hosted customers run API + GQORA Admin + SQL with Docker Compose on an Ubuntu VPS. You pull prebuilt images — there is no source code to clone.
Managed Cloud customers can skip this page; we email your API URL after payment.
1. VPS and DNS
- Ubuntu 22.04+ VPS with 2+ GB RAM (4 GB recommended if SQL Express is busy).
- Install Docker Engine + the Compose plugin.
- Point an A record for your hostname (e.g.
pos.yourdomain.com) at the VPS IP. - Open firewall ports 80 and 443 (Let’s Encrypt needs 80).
2. Download the pack
Download primecloud-selfhost.zip
cd /opt
sudo mkdir -p GQORA && cd GQORA
sudo curl -L -o pack.zip \
https://github.com/PrimeCloudSuite/prime-touch-release/releases/latest/download/primecloud-selfhost.zip
sudo unzip pack.zip
sudo cp .env.example .env
sudo nano .env
3. Fill .env
Generate secrets on the VPS (do not reuse passwords from another server):
# JWT (≥ 32 characters)
openssl rand -base64 48
# SQL SA password (upper + lower + digit + symbol; NEVER use $)
echo "$(openssl rand -base64 24 | tr -d '/+=' | head -c 20)Aa1!"
| Variable | Meaning |
|---|---|
SITE_HOST | Your hostname only (e.g. pos.yourdomain.com) — no https:// |
IMAGE_TAG | latest or a version such as 1.0.11 |
MSSQL_SA_PASSWORD | Paste the SA password from the command above (no quotes, no $) |
JWT_KEY | Paste the full openssl rand -base64 48 line |
4. Start
sudo docker compose pull
sudo docker compose up -d
sudo docker compose ps
Images come from GitHub Container Registry:
ghcr.io/primecloudsuite/prime-apighcr.io/primecloudsuite/prime-web
Wait a minute for SQL, then check health (use GET, not HEAD):
curl -s https://YOUR-HOST/api/health
Expect JSON with a healthy status. A 405 on curl -I is normal for HEAD.
5. First GQORA Admin login
- Open
https://YOUR-HOST/ - Sign in: username
admin/ passwordadmin@123 - Change the admin password immediately
- Create your branch and at least one station (till PC)
6. Point tills
Continue with the till setup guide. Each till’s API URL is:
https://YOUR-HOST/api
License activation always uses our shared host: https://licenses.gqora.com (you do not run a license server).
Updates
sudo docker compose pull
sudo docker compose up -d
Or pin IMAGE_TAG to a release version, then pull again.