payment-gateway.app Docs
Deployment

Docker Compose Deployment

Deploying using traditional Docker Compose on any operating system.

Docker Compose Deployment

Docker Compose is an accessible self-hosted deployment option for the Payment Gateway on Linux, Windows, and macOS.

For the first customer deployment, start with Self-Hosted Installation. This page focuses on Docker Compose specific operations after you already know your required domains, deployment access values, and activation flow.

Prerequisites

Before starting, ensure your system meets these requirements:

  • Docker Engine 24+ and Docker Compose v2
  • curl, jq, and openssl installed
  • At least 4 CPU cores and 8 GB RAM
  • Optional: MongoDB TLS certificates (recommended for production)

Docker Compose Flow

  1. Clone the repository and navigate to the Docker Compose folder:

    git clone https://github.com/root-sector-ltd-and-co-kg/payment-gateway-deploy
    cd payment-gateway-deploy/docker-compose
  2. Prepare environment configuration. On first run, ./deploy.sh copies templates/.env.template to .env if it is missing, prints required values, and exits until domains and deployment access credentials are filled in. You can also create .env manually from the template, replace yourdomain.com with your actual domain, and add your deployment access values from the license dashboard. See Configuration Requirements for MongoDB TLS and Self-Hosted Installation for the full credential setup.

  3. Deploy the application (auto-generates .env.secrets on first run):

    ./deploy.sh
  4. Activate the license from the same host after the stack is running. The admin backend creates the installation ID automatically on first startup.

For backup/recovery operations, see Backup & Recovery (GDPR). For encryption scope and processed-data overview, see Data Processing & Encryption.

Managing Services

After deployment, manage your containers using standard Docker Compose commands from inside the docker-compose/ directory:

  • Check logs: docker compose logs -f
  • Restart services: docker compose restart
  • Stop the stack: docker compose down

Note: For production updates, use the unified updater (./scripts/update.sh --engine docker-compose) rather than docker compose up -d. Engine component flags are internal automation mechanics and do not publish or verify signed release metadata by themselves.

On this page