🐳 Firefox Sync Server image based on Python Alpine Linux.
If you are interested, check out my other 🐳 Docker images!
- Alpine Linux 3.8
- Traefik as reverse proxy and creation/renewal of Let's Encrypt certificates
TZ
: The timezone assigned to the container (defaultUTC
)FF_SYNCSERVER_PUBLIC_URL
: Must be edited to point to the public URL of your server (defaulthttp://localhost:5000
).FF_SYNCSERVER_SECRET
: This is a secret key used for signing authentication tokens. It should be long and randomly-generated.FF_SYNCSERVER_ALLOW_NEW_USERS
: Set this tofalse
to disable new-user signups on the server. Only request by existing accounts will be honoured (defaulttrue
).FF_SYNCSERVER_FORCE_WSGI_ENVIRON
: Set this totrue
to work around a mismatch between public_url and the application URL as seen by python, which can happen in certain reverse-proxy hosting setups (defaultfalse
).FF_SYNCSERVER_SQLURI
: Defines the database in which to store all server data (defaultsqlite:///data/syncserver.db
).
/data
: Contains SQLite database ifFF_SYNCSERVER_SQLURI
is untouched
5000
: Gunicorn port
Docker compose is the recommended way to run this image. You can use the following docker compose template, then run the container :
touch acme.json
chmod 600 acme.json
docker-compose up -d
docker-compose logs -f
You can also use the following minimal command :
$ docker run -d -p 5000:5000 --name firefox_syncserver \
-e TZ="Europe/Paris" \
-e FF_SYNCSERVER_SECRET="5up3rS3kr1t" \
-v $(pwd)/data:/data \
crazymax/firefox-syncserver:latest
Recreate the container whenever i push an update :
docker-compose pull
docker-compose up -d
All kinds of contributions are welcome 🙌!
The most basic way to show your support is to star 🌟 the project, or to raise issues 💬
But we're not gonna lie to each other, I'd rather you buy me a beer or two 🍻!
MIT. See LICENSE
for more details.