Skip to content

Support for custom MTU (<1500) on dokploy-network (Required for Hetzner Cloud) #3446

@maxhoheiser

Description

@maxhoheiser

To Reproduce

  1. 2 VPS instances running both docker 1st running dokploy 2nd docker only
  2. internal network connects both without any restrictions via private ips
  3. both are connected in a cluster 1st as swarm manager 2nd as worker
  4. swarm deployment that deploys to worker via labels

Current vs. Expected behavior

Problem Description: On Hetzner Cloud, the internal VPC network (Cloud Networks) has a maximum MTU of 1450 Hetzner Reference: https://docs.hetzner.com/networking/networks/troubleshooting/mtu/.

3: enp7s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc fq_codel state UP group default qlen 1000

Docker Swarm defaults to 1500. This mismatch causes 504 Gateway Timeout errors in Traefik when communicating with services on worker nodes, as packets are dropped due to size.

504 Gateway Timeout error="dial tcp 10.0.1.11:80: i/o timeout"

With 10.0.1.11 beeing the correct ip of a test nginx container attached to dokploy-internal network.

The Bug: Attempting to fix this manually by deleting dokploy-network and recreating it with --opt com.docker.network.driver.mtu=1400 causes Dokploy core services to fail on restart.

1. Scaling down Dokploy services to delete the network works (not enough)
2. Rrmove services attahced to dokploy-internal (enough to delete network)
3. Delete network
4. Manually recreating the network
docker network create \
  --driver overlay \
  --attachable \
  --opt com.docker.network.driver.mtu=1400 \
  dokploy-network

However, upon restarting, Dokploy core containers (dokploy, postgres, redis) fail to establish start.

Request: What is the officially supported way to initialize Dokploy with a custom MTU for its internal network? Is there a plan to allow an MTU variable in the install.sh script to avoid the "network in use" and startup failure loop?
Can this be set via the GUI currently?

Provide environment information

Operating System: Ubuntu 24.04.3 LTS
          Kernel: Linux 6.8.0-90-generic
    Architecture: x86-64
 Hardware Vendor: Hetzner
  Hardware Model: vServer

Which area(s) are affected? (Select all that apply)

Traefik, Docker, Remote server

Are you deploying the applications where Dokploy is installed or on a remote server?

Remote server

Additional context

No response

Will you send a PR to fix it?

No

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions