Blog Image

Deploy on Your Own Laptop or PC Without Renting Another Server

Avatar
Brook
21 Aug, 2026
Bring Your Own HardwareWorker Nodes

Got an old laptop or PC sitting around? Don’t throw it away. Connect it to dFlow as a Worker Node and put that hardware to work. Deploy the applications you need without paying for another server. Each application gets its own public domain, even when the Worker Node runs on a local machine.

Why this pattern matters

Most teams default to renting capacity every time they need a place to run an application. That works—but it is not always necessary.

If you already have unused compute—an old laptop, desktop, mini PC, home lab machine, or local virtual machine—you can treat it as infrastructure:

  • Reuse existing capacity instead of paying for another instance
  • Keep control of the hardware while using a managed control plane for deploys

In short: your machine provides the compute; dFlow provides the orchestration, networking path, and deployment experience.

What you will build

By the end of this guide, you will have:

  1. An Ubuntu environment sized to your available hardware
  2. A secure Tailscale connection between that environment and dFlow
  3. A registered Worker Node ready for deployments
  4. An application running on that node
  5. A public preview domain for access and validation

Architecture overview:

1Existing Hardware (laptop / PC / VM)
2
3 Ubuntu Host
4
5 Tailscale
6
7 dFlow Worker Node
8
9 Deployed Application
10
11 Public Preview Domain


What You Can Run on It

Each application you deploy gets its own public domain with public preview access even when the Worker Node runs on a local machine.

Personal sites, side projects, and development

Use your Worker Node to publish and share work without renting another server:

  • Personal websites and portfolios
  • Side projects that need a public URL
  • Remote-friendly development or staging environments

Automation, agents, and AI tooling

The same Worker Node can host a growing set of automation and AI tools, including:

  • n8n — workflow automation and integrations
  • Hermes Agent — agent-style workloads on your own hardware
  • Paperclip — agent and automation tooling for practical workflows
  • Ollama — run and serve local models on your node
  • OpenHands — AI coding and agent environments

Prerequisites

Requirement

Notes

Hardware

Laptop, desktop, mini PC, home server, or VM with spare CPU, RAM, and disk

Platform

Windows, macOS, or Linux

OS for the Worker Node

Ubuntu 24.04 LTS recommended (bare metal or inside a VM)

dFlow account

Access at app.dflow.sh

Network

Ability to install packages and join Tailscale

Step 1 — Choose How You Will Run Ubuntu

dFlow Worker Nodes require a supported Linux environment. Choose the option that best matches your machine.

Option A — Ubuntu on Bare Metal

Best when you can dedicate the machine to running Ubuntu, or when you want to dual-boot.

  1. Download Ubuntu 24.04 LTS.
  2. Create a bootable USB installer.
  3. Install Ubuntu on the laptop or PC.
  4. Complete the first boot and apply any required updates.

This works whether the hardware previously ran Windows, Linux, or another operating system.

Option B — Ubuntu as a VM on Windows

Best when you want to keep Windows as the primary operating system.

Common approaches include:

  • WSL2 with Ubuntu 24.04 — convenient for development and lighter workloads; verify that your Worker Node requirements are supported.
  • Hyper-V, VirtualBox, or VMware Workstation with Ubuntu 24.04 — useful when you want dedicated CPU, memory, disk, and networking resources for the Worker Node.

Allocate resources based on what the host machine can spare and what you plan to deploy. For example:

  • 2–8 CPUs
  • 4–12 GiB RAM
  • 20–100 GiB disk

Option C — Ubuntu as a VM on macOS

Keep macOS as the host operating system and run Ubuntu using a virtualization solution such as Lima, UTM, or another supported hypervisor.

For example, with Lima, create a dflow-vm.yaml file:

1minimumLimaVersion: "2.0.0"
2
3base:
4 - template:_images/ubuntu-24.04
5
6cpus: 4
7memory: "6GiB"
8disk: "25GiB"

Create and start the VM:

1brew install lima
2
3limactl create --name=dflow-vm ./dflow-vm.yaml
4
5limactl start dflow-vm
6
7limactl shell dflow-vm

Option D — Ubuntu Already Installed on Linux

If the machine already runs Ubuntu 24.04 LTS, or another Linux distribution/version supported by dFlow, you can skip VM or OS provisioning and go directly to the verification step.

Step 2 — Verify the Ubuntu Environment

Open a terminal on the Ubuntu host (or inside the VM) and run:

1cat /etc/os-release
2nproc
3free -h
4df -h /

Confirm:

  • OS is Ubuntu 24.04 LTS (or another distribution/version supported by dFlow)
  • CPU count matches your plan
  • Memory and disk are enough for the apps you intend to deploy

Step 3 — Open the Worker Node Flow in dFlow

In the dFlow dashboard:

  1. Go to Worker Nodes
  2. Click on Add New Worker Node
  3. Choose Add Worker Node Manually

Step 4 — Generate and Apply Tailscale Setup

In the manual Worker Node setup, locate Tailscale Setup and click Generate.

dFlow provides two commands. Run both inside the Ubuntu environment.

4.1 Install Tailscale

The install command will look similar to:

1sudo curl -fsSL https://tailscale.com/install.sh | sh

4.2 Join the Network

The connect command will look similar to:

1sudo tailscale up --authkey=<YOUR_DFLOW_TAILSCALE_AUTH_KEY> \
2 --hostname=<YOUR_WORKER_HOSTNAME> \
3 --ssh

Step 5 — Connect the Worker Node

Return to the dFlow Worker Node setup and click Connect Worker Node.

dFlow verifies that the machine is reachable over the private network. On success, status should show Connected.

If connection fails, re-check:

  • Tailscale installed successfully
  • Auth command completed without error
  • The host or VM is still running and online
  • You used the generated key for this specific Worker Node flow

Step 6 — Complete Worker Node Onboarding

After the Worker Node is connected, complete the onboarding flow in dFlow. This prepares the machine for real deployments.

During onboarding, dFlow guides you through:

  1. Worker Node preparation — confirm the node is ready
  2. Dokku installation — install the PaaS layer used to run applications

Step 7 — Deploy an Application

With the Worker Node online:

  1. Create new app
  2. Select the new Worker Node as the target
  3. Deploy your application (or a template)
  4. Confirm the service is running on the node

Share: