dynamoip
Examples

Local — Quick Mode (Docker)

Two services with .local hostnames and mkcert certificates, running in Docker. No Cloudflare account needed.

Two apps and dynamoip in Docker, reachable over your LAN with .local hostnames and mkcert certificates. No Cloudflare account, no domain required.

https://inventory.local  →  localhost:3001
https://dashboard.local  →  localhost:6000

How it works

dynamoip uses mDNS to broadcast .local hostnames on your network and mkcert to issue certificates signed by a local CA. The host machine's mkcert CA is shared into the container so browsers already trust the certificates.

Prerequisites

  • Docker and Docker Compose
  • mkcert installed on the host machine
  • Node.js (for the setup script)

Install mkcert:

# macOS
brew install mkcert

# Linux
# See https://github.com/FiloSottile/mkcert#linux

Setup

1. Clone the examples repo

git clone https://github.com/foundanand/dynamoip-examples
cd dynamoip-examples/local

2. Run the host setup script (once)

sudo node setup-hosts.js

This script:

  • Runs mkcert -install to add the CA to your system keychain
  • Writes the CAROOT path to .env so Docker can mount the CA directory
  • Adds /etc/hosts entries for the .local hostnames

You only need to run this once per machine.

3. Start everything

docker compose up --build

4. Open on any device on the same network

https://inventory.local
https://dashboard.local

On this machine: no warnings — CA is already trusted.

On other devices: install the mkcert CA certificate once. dynamoip's built-in landing page at https://inventory.local shows per-platform install instructions.

Config

{
  "domains": {
    "inventory": 3001,
    "dashboard": 6000
  }
}

No baseDomain — that's what tells dynamoip to use Quick mode with .local hostnames.

Stopping

docker compose down

Notes

LAN only. Quick mode serves .local hostnames via mDNS — other devices on the same network can reach them, but they are not accessible from the internet.

No Cloudflare. No API token, no domain purchase required. Great for isolated local development.

Want public internet access instead? See the Tunnel example which uses Max mode with Cloudflare Tunnel.

On this page