perara / wg-manager

A easy to use WireGuard dashboard and management tool
MIT License
603 stars 72 forks source link

Startup Race Condition - Solution I used - Delay Docker Start #125

Open CircuitGuy opened 2 years ago

CircuitGuy commented 2 years ago

Using the Docker method, wg-manager has been running just fine.

However, on server reboots, it wouldn't always work. I was never able to trace the root cause. The web server came up, the wg0 interface showed green, everything seemed to work. Except clients couldn't connect.

My conclusion is that there's some sort of network race condition, but it's not making a lot of sense why. My solution is crude, but it works. I delayed Docker's start by 30 seconds. In an Ubuntu host, I edited: /etc/systemd/system/multi-user.target.wants/docker.service under [Service] right before ExecStart, I added ExecStartPre=/bin/sleep 30

The delay is definitely a band-aid that shouldn't be needed, but hopefully it helps someone.

perara commented 2 years ago

Perhaps docker starts up before networking? Maybe its possibly to delay this internally.