Linux Automation Node & Server Installation Guide
Complete guide to installing BrowserMesh on Linux desktop or VPS servers. Run high-performance automation nodes with 100% local data privacy.
BrowserMesh provides first-class support for Linux operating systems, catering to both visual desktop workstations (Ubuntu, Fedora, Arch Linux) and headless cloud servers (DigitalOcean, AWS EC2, Hetzner, Linode).
Running automation nodes on Linux offers exceptional performance, minimal memory footprints, and effortless integration with enterprise DevOps pipelines and systemd process management.
Desktop Application Installation (GUI)
For graphical desktop environments, BrowserMesh is distributed as a portable AppImage and a Debian package (.deb):
Option 1: Universal AppImage
- Download the latest
BrowserMesh-linux.AppImagefrom the Download Center (/download). - Open your terminal and grant execution permissions:
Terminal / Code
chmod +x BrowserMesh-linux.AppImage - Launch the application:
Terminal / Code
./BrowserMesh-linux.AppImage
Option 2: Debian / Ubuntu .deb Package
wget https://github.com/browsermesh/releases/releases/latest/download/browsermesh-linux.deb
sudo dpkg -i browsermesh-linux.deb
sudo apt-get install -f # Fix any missing dependencies
How to Set Up Headless BrowserMesh Nodes on Linux Servers?
Deploying BrowserMesh on headless Linux distributions requires executing our automated installation script or running the lightweight companion daemon binary. The background daemon installs required Chromium runtime dependencies, registers a systemd background service, and establishes an outbound TLS tunnel to the central orchestration server automatically.
Why Choose Headless Linux Daemons for Continuous Automation?
Headless Linux daemons provide uninterrupted 24/7 background automation without requiring graphical desktop environments or expensive cloud virtual machines. By running on private servers or local home labs, you eliminate recurring cloud proxy markups and retain absolute control over hardware compute resources and database storage.
For background automation nodes on cloud VPS instances without a graphical display:
curl -sSL https://www.browsermesh.in/scripts/install-headless.sh | bash
Alternative using wget:
wget -qO- https://www.browsermesh.in/scripts/install-headless.sh | bash
Essential Headless Chromium Dependencies
If deploying on a minimal Ubuntu or Debian server image, install required shared libraries for headless Chromium:
sudo apt-get update && sudo apt-get install -y \
libnss3 libatk1.0-0 libatk-bridge2.0-0 libcups2 libdrm2 \
libxkbcommon0 libxcomposite1 libxdamage1 libxfixes3 libxrandr2 \
libgbm1 libasound2 libpango-1.0-0 libcairo2
Running as a Persistent Systemd Service
To ensure the BrowserMesh node daemon starts automatically on server boot and recovers gracefully from system crashes, configure a systemd service:
Create /etc/systemd/system/browsermesh.service:
[Unit]
Description=BrowserMesh Automation Node Daemon
After=network.target
[Service]
Type=simple
User=ubuntu
WorkingDirectory=/home/ubuntu/browsermesh-node
ExecStart=/usr/bin/npm start
Restart=always
RestartSec=10
Environment=NODE_ENV=production
[Install]
WantedBy=multi-user.target
Enable and start the service:
sudo systemctl daemon-reload
sudo systemctl enable browsermesh
sudo systemctl start browsermesh
Managing Your Node via the mesh CLI
The setup script creates a global command shortcut called mesh:
mesh status: View memory consumption, CPU load, and connected cloud status.mesh logs: Tail live execution logs and scraping workflow events.mesh restart: Perform a graceful reboot of the node worker.mesh stop: Temporarily pause the background automation engine.mesh start: Resume the background daemon.
Docker Container Deployment
You can also deploy BrowserMesh inside containerized Kubernetes or Docker environments.
FROM node:20-slim
RUN apt-get update && apt-get install -y chromium \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /app
COPY . .
ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium
CMD ["npm", "start"]
Headless Chromium Memory Optimization
When hosting on entry-level cloud VPS instances (such as a 1 GB or 2 GB RAM VPS from Hetzner, DigitalOcean, or AWS EC2 t4g.small), add the following performance tuning flags to /home/ubuntu/browsermesh-node/.env:
BROWSER_FLAGS="--no-sandbox,--disable-setuid-sandbox,--disable-dev-shm-usage,--disable-accelerated-2d-canvas,--no-first-run,--disable-gpu"
These flags prevent /dev/shm shared memory exhaustion, disable superfluous GPU virtualization layers, and lower base Chromium resident memory down to under 120 MB per process.
Related Platform & Commercial Resources
- Download Linux Binary & AppImage: Official Download Center (
/download) - Explore 250+ Workflows: Browse Plugin Marketplace (
/marketplace) - Pricing & Multi-Device Fleet: Transparent Pricing (
/pricing) - Engine Architecture: AutomationEngine Features (
/features) - Windows Node Guide: Windows Installation Guide (
/docs/install-windows) - Android Guide: Android Installation Guide (
/docs/install-android)