Skip to Content
🚀 Wiredoor 1.0.0 now available - Ready to expose your private services? Get Started →
Documentation Quickstart

Quickstart Guide

Wiredoor Server is the entry point for all external traffic.
This means that the server’s public IP address or domain must be accessible from the internet,
or at least from the network where you want to access the exposed services.

Wiredoor is designed to run on a publicly reachable host so it can securely receive inbound traffic and forward it to your internal services over a private VPN tunnel.

This guide will help you get Wiredoor running and expose your first private service to the internet in just a few steps.

Requirements

  • âś… A Linux VPS or server (bare metal or cloud-based)
  • âś… Public IP address or domain name pointing to the server
  • âś… Open ports:
    • TCP: 80, 443 — for HTTP and HTTPS traffic
    • UDP: 51820 — for WireGuard VPN (configurable)
    • Optional: a range of ports for exposing TCP services
  • âś… Installed:

Deploy Wiredoor Server to your remote server

Clone Wiredoor Docker Setup

git clone https://github.com/wiredoor/docker-setup.git cd docker-setup

Configure environment variables

cp .env.example .env nano .env

Set your admin email, password, VPN public hostname or IP, and optionally, the TCP port range. If you modify the TCP port range, make sure to update the ports: section in docker-compose.yml.

Start Wiredoor Server

docker compose up -d

Log in to the Wiredoor web UI

In your browser, Navigate to https://your_wiredoor_domain_or_ip. Use the admin credentials from your .env file to access the dashboard.

For more information on using the web UI, visit the Usage Guide


Configure Wiredoor CLI on your private node

Install Wiredoor CLI

You can use the auto-installer:

curl -s https://www.wiredoor.net/install-wiredoor-cli.sh | sh

Or download a package from GitHub Releases .

Login and register node using wiredoor-cli

Run the following on the device you want to connect:

wiredoor login --url=https://your_deployed_wiredoor_domain_or_ip

This will:

  • Promp for admin credentials (email and password)
  • Ask for a name for the node (default: current hostname)
  • Register the node in the server
  • Connect it automatically via WireGuard

Expose your first

If you have a service running locally (e.g. on port 3000), you can expose it:

wiredoor http myapp --domain app.your.domain.com --port 3000
⚠️

The domain app.your.domain.com must point to the public Wiredoor server’s IP address.


Learn more

Last updated on