Nebula-Sync
credit to TechnoTim for the image
Nebula-Sync is used to keep multiple pi-holes in sync.
I used to use "Gravity Sync" and "Orbital-Sync"
Gravity Sync wasn't going to support Pi-Hole V6 so switched to Orbital-Sync This was incredibly easy to setup as its a simple docker container with an easy to configure docker-compose file. This did eventually support Pi-Hole V6 but the developer didn't release its final form and announced that he was moving away from this project as there was already "nebula-sync"
I therefore changed to this and it is working very well.
There is an example on the applications github page but my example is shown below. (I have added "network_mode", "restart" options aswell as my timezone)
services:
nebula-sync:
image: ghcr.io/lovelaze/nebula-sync:latest
container_name: nebula-sync
network_mode: host
restart: always
environment:
- TZ=Europe/London
- PRIMARY=https://pi-hole1.domain.com|${PRIMARY_PASSWORD}
- REPLICAS=https://pi-hole2.domain.com|${REPLICA1_PASSWORD}
- FULL_SYNC=true
- RUN_GRAVITY=true
- CRON=0 * * * *
I have also created a ".env" file within the same location/directory as the compose file which contains the passwords for both pi-holes. This is then called/referenced with the corresponding variable.