Skip to content

Connecting Your Instance

Linking a self-hosted Dozzle to Dozzle Cloud, confirming it actually connected, and fixing it when it did not.

  1. Open your self-hosted Dozzle and click the cloud icon in the top bar.
  2. Click Link instance. You are sent to Cloud to sign in with GitHub or Google and confirm.
  3. The instance appears on the Cloud dashboard within a few seconds.

There is no password to create, and no agent to install on the host.

You do not need a public IP, an open port, or a domain

This is the most common worry, and the answer is no on all three.

Your Dozzle instance opens an outbound connection to Cloud and holds it open. Cloud never connects back to you, never scans for your host, and never needs to reach your address. That means it works normally when Dozzle is:

  • behind NAT on a home network, with no port forwarding
  • on a private RFC1918 address such as 192.168.1.50
  • on a Tailscale, WireGuard, or ZeroTier network
  • behind CGNAT, where you could not port-forward even if you wanted to
  • on a laptop that changes networks

No reverse proxy, dynamic DNS name, or static IP is required.

Firewall rules

Only outbound access is needed. Allow your Dozzle host to reach:

agent.doligence.dozzle.dev:443    (TCP, outbound)

That single destination on port 443 is enough. If your firewall filters by hostname rather than IP, allow the hostname — the addresses behind it can change. Most home and small-office firewalls allow all outbound traffic already, so usually there is nothing to configure.

Where rules and channels live

This trips up almost everyone, so it is worth stating plainly.

What you want to changeWhere you do it
What triggers an alert — containers, patterns, thresholdsSelf-hosted Dozzle → Alerts
Where alerts are delivered — email, Telegram, Slack, ...Dozzle Cloud → Channels
Reviewing past alerts, muting, upgradingDozzle Cloud

The rule is defined on your own instance because that is where your logs are. Delivery is configured in Cloud because that is what holds the connection to your phone. If you are looking for somewhere in Cloud to say "tell me when this container errors" and cannot find it, that is why — open your self-hosted Dozzle instead.

Connecting more than one instance

Each instance links separately, using the same steps and the same Cloud account. Once linked, all of them appear together on the dashboard, and questions asked in chat cover every connected instance at once.

That combined view lives in Cloud, not inside any one self-hosted Dozzle. A self-hosted Dozzle shows the hosts you configured on it directly; it does not display other linked instances.

Linking several Dozzle instances is a different thing from Dozzle's own Agent and Remote Hosts features, which connect extra Docker hosts to a single Dozzle. Both are supported and can be combined.

The free plan links one instance at a time. See Plans & Limits.

Nothing is showing up

Work through these in order.

1. Is the Dozzle container running? If Dozzle itself is stopped or restarting, nothing reaches Cloud.

2. Was the link ever completed? Starting the link and not approving it leaves nothing behind. Redo the steps above and confirm the instance appears on the Instances page.

3. Was the API key deleted? Deleting an instance's API key unlinks it permanently. There is no way to reattach the old key — link again to get a new one.

4. Is outbound traffic being blocked? Restrictive networks (corporate, university, some VPS providers) may block outbound 443 to destinations not on an allowlist. See Firewall rules above.

5. Did you hit the free instance limit? The free plan links one instance at a time. Attempting to link a second shows a limit message instead of connecting.

6. Is the container excluded from forwarding? A container labelled dev.dozzle.cloud.min_level=disabled sends nothing by design. If one specific container is missing while others work, check its labels. See Your Data.

Letting the agent control containers

Reading logs and container state works as soon as an instance is linked. Start, stop, and restart are refused by your instance unless you enable them yourself:

yaml
services:
  dozzle:
    image: amir20/dozzle
    environment:
      DOZZLE_ENABLE_ACTIONS: true
sh
docker run ... amir20/dozzle --enable-actions

This is a setting on your Dozzle, not in Cloud, because it governs what your Dozzle is willing to do to your containers. Restart Dozzle after changing it. See Actions.

Unlinking

Delete the instance's API key on the Instances page in Cloud. The connection drops, no further data is forwarded, and your self-hosted Dozzle keeps working exactly as before. Linking never changes local log viewing.

Released under the MIT License. Open sourced and sponsored by Docker OSS.