Firefox Sync Server
Most of this (well, almost all of it really!) was copied from https://jlelse.blog/dev/firefox-sync-server . The first step is to put the following into a docker-compose or portainer stack.
Everything below that is in "<>" needs you to replace that string with the correct data for your setup. i.e. delete the "<string>" & replace it with the real value, don't leave the brackets there! :)
The next steps are exactly as per that website
- Go to
about:config
and search foridentity.sync.tokenserver.uri
. - Now change replace
https://token.services.mozilla.com/1.0/sync/1.5
withhttps://yourawesomeurl.tld/token/1.0/sync/1.5
. Don’t forget thetoken
, because the self hosted Firefox sync server is exposing the token server in a subdicrectory. - Just to make sure everything is set up correctly, log out of Firefox (if you logged in before) and restart the browser.
- Now go to the settings, login with your Firefox account and the synchronization can start.
There is a wrinkle if you are using Firefox Mobile (taken from their docs)
Firefox for Android (“Daylight”, versions 79 and later) does support using a non-Mozilla-hosted Sync server. Before logging in, go to App Menu > Settings > About Firefox and click the logo 5 times. You should see a “debug menu enabled” notification. Go back to the main menu and you will see two options for a custom account server and a custom Sync server. Set the Sync server to the URL given above and then log in.
I've got the sync server running behind a caddy reverse proxy, but the Caddyfile entry is a one liner: "reverse_proxy <internal ip>:<internal port>"