Back to articles
Technology Insight

Self-Hosting Activepieces on Docker VPS: A Comprehensive Guide to Open-Source Business Automation

June 4, 2026

Introduction to Modern Business Automation

In the contemporary digital ecosystem, efficiency is no longer a luxury—it is a core competitive advantage. Businesses rely heavily on the seamless integration of disparate cloud applications to automate repetitive workflows, sync critical customer data, and streamline operational pipelines. For years, proprietary platforms like Zapier and Make have dominated this space. However, as organizations scale, these platforms often introduce significant challenges, including escalating per-task costs, rigid vendor lock-in, and compliance concerns regarding data sovereignty.

Enter Activepieces, a powerful, open-source business automation platform designed to be a direct, self-hosted alternative to proprietary giants. By self-hosting Activepieces on a Virtual Private Server (VPS) using Docker, your organization can regain absolute control over its data, eliminate arbitrary execution limits, and significantly reduce operational overhead. This comprehensive guide will walk you through the entire process of deploying Activepieces on your own infrastructure.

Why Choose Activepieces and Self-Hosting?

Before diving into the technical deployment, it is essential to understand why an enterprise should consider migrating from SaaS automation tools to a self-hosted open-source model like Activepieces.

  • Uncompromising Data Privacy and Compliance: When you utilize third-party SaaS automation, sensitive customer data, proprietary financial records, and internal communications pass through external servers. Self-hosting ensures all data remains strictly within your secure perimeter, facilitating compliance with regulations like GDPR, HIPAA, or local data protection laws.
  • Cost Predictability and Scalability: Proprietary platforms charge dynamically based on the volume of operations. A high-frequency workflow can unexpectedly spike your monthly bill. With a self-hosted Docker VPS setup, your costs remain flat and predictable, tied only to the underlying hardware resources.
  • Extensibility and Freedom: Activepieces features a robust ecosystem of pre-built pieces (integrations). Because it is open-source, your development team can easily build custom pieces for internal, proprietary software without waiting for vendor approval.

Prerequisites for Deployment

To successfully follow this guide, ensure you have the following prerequisites ready:

  1. A Linux VPS: A virtual private server running Ubuntu 22.04 LTS or newer is highly recommended. For small to medium automation workloads, a server with 2 vCPUs and 4GB of RAM is an excellent starting point.
  2. A Registered Domain Name: A domain or subdomain (e.g., automation.yourcompany.com) pointed to your VPS IP address via an A record. This is crucial for securing the platform with SSL/TLS.
  3. Docker and Docker Compose Installed: The host machine must have Docker Engine and the Docker Compose plugin configured.
  4. Basic Command Line Proficiency: Familiarity with SSH, basic Linux terminal navigation, and standard text editors like Nano or Vim.

Step 1: Preparing Your VPS Environment

First, establish a secure SSH connection to your VPS and ensure the underlying system packages are fully updated. Run the following commands:

sudo apt update && sudo apt upgrade -y

Next, verify that Docker and Docker Compose are properly installed on your machine by checking their versions:

docker --version
docker compose version

If they are not installed, you can quickly install the Docker engine using the official convenience script provided by Docker:

curl -fsSL [https://get.docker.com](https://get.docker.com) -o get-docker.sh
sudo sh get-docker.sh

Step 2: Configuring Activepieces via Docker Compose

Activepieces relies on a microservices architecture to handle web traffic, manage relational data, and execute background tasks efficiently. It typically utilizes a PostgreSQL database for state management and Redis for task queuing. We will deploy these components cleanly using Docker Compose.

Create a dedicated directory for your Activepieces deployment to keep your server configuration organized:

mkdir -p ~/activepieces && cd ~/activepieces

Now, create a docker-compose.yml file within this directory:

nano docker-compose.yml

Paste the following production-ready Docker Compose configuration into the file:

version: '3.8'

services:
  postgres:
    image: postgres:15-alpine
    environment:
      POSTGRES_DB: activepieces
      POSTGRES_USER: ap_user
      POSTGRES_PASSWORD: strong_secure_password_here
    volumes:
      - postgres_data:/var/lib/postgresql/data
    restart: always

  redis:
    image: redis:7-alpine
    volumes:
      - redis_data:/data
    restart: always

  activepieces:
    image: activepieces/activepieces:latest
    environment:
      AP_ENVIRONMENT: production
      AP_POSTGRES_DATABASE: activepieces
      AP_POSTGRES_USER: ap_user
      AP_POSTGRES_PASSWORD: strong_secure_password_here
      AP_POSTGRES_HOST: postgres
      AP_POSTGRES_PORT: 5432
      AP_REDIS_URL: redis://redis:6379
      AP_ENCRYPTION_KEY: 32_character_random_string_here
      AP_JWT_SECRET: another_random_secure_string_here
      AP_FRONTEND_URL: http://localhost:8080
    ports:
      - "8080:80"
    depends_on:
      - postgres
      - redis
    restart: always

volumes:
  postgres_data:
  redis_data:
Security Warning: Always replace placeholders like strong_secure_password_here, 32_character_random_string_here, and another_random_secure_string_here with uniquely generated, high-entropy values before launching your container ecosystem.

Step 3: Launching the Platform

With your environment variables and configuration files properly defined, you can initialize the containers. Execute the following command within your deployment directory:

sudo docker compose up -d

The -d flag instructs Docker to pull the necessary images and run the containers in detached mode in the background. You can monitor the startup sequence and ensure there are no configuration conflicts by inspecting the container logs:

sudo docker compose logs -f activepieces

Once the initialization logs display a successful server startup message, Activepieces will be actively listening internally on port 8080.

Step 4: Securing Activepieces with a Reverse Proxy and SSL

Exposing raw HTTP ports directly to the internet is unsafe for enterprise business production. To safeguard user credentials and API webhooks, we must implement a reverse proxy like Nginx combined with Let's Encrypt SSL certificates.

Install Nginx on your VPS host:

sudo apt install nginx -y

Create a new server block configuration for Activepieces:

sudo nano /etc/nginx/sites-available/activepieces

Insert the configuration below, ensuring you replace automation.yourcompany.com with your actual subdomain:

server {
    listen 80;
    server_name automation.yourcompany.com;

    location / {
        proxy_pass [http://127.0.0.1:8080](http://127.0.0.1:8080);
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    
        # WebSockets support for real-time log updates
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    }
}

Enable the site configuration and restart Nginx to apply changes:

sudo ln -s /etc/nginx/sites-available/activepieces /etc/nginx/sites-enabled/
sudo systemctl restart nginx

To provision a free, automated Let's Encrypt SSL certificate, utilize Certbot:

sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d automation.yourcompany.com

Follow the interactive prompts to complete the SSL installation. Certbot will automatically rewrite your Nginx configuration to force secure HTTPS connections seamlessly.

Step 5: Initial Setup and Onboarding

Navigate to your configured domain name using a modern web browser (e.g., [https://automation.yourcompany.com](https://automation.yourcompany.com)). You will be greeted by the initial Activepieces setup page. Here, you will create the primary administrator account by specifying a professional email address and a strong master password.

Once logged in, take a moment to explore the clean, intuitive dashboard. You can create your first Collection, define a Trigger (such as an incoming webhook, an e-commerce event, or a recurring schedule), and append sequential Actions to interact with various cloud applications or internal databases.

Best Practices for Maintenance and Optimization

Operating self-hosted infrastructure requires a level of proactive care to guarantee maximum uptime and security. Consider adopting these fundamental management habits:

  • Automated Backups: Schedule automated nightly cron jobs to back up the externalized PostgreSQL volume data (postgres_data). If structural corruption or localized hosting outages occur, your workflows can be restored immediately without data loss.
  • Keeping Activepieces Updated: The Activepieces open-source community moves rapidly, frequently introducing security patches and new integration pieces. To update your installation, simply navigate to your deployment folder, pull the latest image, and recreate the containers:
    docker compose pull && docker compose up -d
  • Resource Allocations: Constantly monitor your VPS memory consumption. As you increase the volume of simultaneously executing background workers, you may need to scale your VPS specifications or allocate dedicated memory limits inside Docker to maintain system stability.

Conclusion

By migrating your automated workflows to a self-hosted instance of Activepieces via a Docker VPS, you effectively decouple your corporate growth from scaling SaaS usage metrics. You unlock absolute control over data transmission, drastically reduce fixed operating costs, and empower your enterprise with a customizable automation architecture. Take charge of your business logic today, minimize operational dependencies, and build a more resilient digital workflow infrastructure.

Self-Hosting Activepieces on Docker VPS: A Comprehensive Guide to Open-Source Business Automation | DPTCloud