{"id":13443036,"url":"https://github.com/crazy-max/docker-firefox-syncserver","last_synced_at":"2025-03-20T15:31:54.018Z","repository":{"id":27817259,"uuid":"115276490","full_name":"crazy-max/docker-firefox-syncserver","owner":"crazy-max","description":"Firefox Sync Server Docker image","archived":true,"fork":false,"pushed_at":"2023-05-04T19:43:33.000Z","size":293,"stargazers_count":194,"open_issues_count":7,"forks_count":13,"subscribers_count":8,"default_branch":"master","last_synced_at":"2024-10-28T06:00:32.346Z","etag":null,"topics":["alpine-linux","docker","firefox","mozilla-syncserver","multi-platform"],"latest_commit_sha":null,"homepage":"","language":"Dockerfile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/crazy-max.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":".github/SUPPORT.md","governance":null,"roadmap":null,"authors":null},"funding":{"github":"crazy-max","custom":"https://www.paypal.me/crazyws"}},"created_at":"2017-12-24T16:55:50.000Z","updated_at":"2024-10-13T07:37:24.000Z","dependencies_parsed_at":"2024-01-14T16:08:11.198Z","dependency_job_id":"cad2987c-4477-4d2f-8a8e-e68176f0a746","html_url":"https://github.com/crazy-max/docker-firefox-syncserver","commit_stats":null,"previous_names":[],"tags_count":20,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/crazy-max%2Fdocker-firefox-syncserver","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/crazy-max%2Fdocker-firefox-syncserver/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/crazy-max%2Fdocker-firefox-syncserver/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/crazy-max%2Fdocker-firefox-syncserver/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/crazy-max","download_url":"https://codeload.github.com/crazy-max/docker-firefox-syncserver/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244640130,"owners_count":20485990,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["alpine-linux","docker","firefox","mozilla-syncserver","multi-platform"],"created_at":"2024-07-31T03:01:55.147Z","updated_at":"2025-03-20T15:31:53.620Z","avatar_url":"https://github.com/crazy-max.png","language":"Dockerfile","readme":"\u003cp align=\"center\"\u003e\u003ca href=\"https://github.com/crazy-max/docker-firefox-syncserver\" target=\"_blank\"\u003e\u003cimg height=\"128\" src=\"https://raw.githubusercontent.com/crazy-max/docker-firefox-syncserver/master/.github/docker-firefox-syncserver.jpg\"\u003e\u003c/a\u003e\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://hub.docker.com/r/crazymax/firefox-syncserver/tags?page=1\u0026ordering=last_updated\"\u003e\u003cimg src=\"https://img.shields.io/github/v/tag/crazy-max/docker-firefox-syncserver?label=version\u0026style=flat-square\" alt=\"Latest Version\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/crazy-max/docker-firefox-syncserver/actions?workflow=build\"\u003e\u003cimg src=\"https://img.shields.io/github/actions/workflow/status/crazy-max/docker-firefox-syncserver/build.yml?branch=master\u0026label=build\u0026logo=github\u0026style=flat-square\" alt=\"Build Status\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://hub.docker.com/r/crazymax/firefox-syncserver/\"\u003e\u003cimg src=\"https://img.shields.io/docker/stars/crazymax/firefox-syncserver.svg?style=flat-square\u0026logo=docker\" alt=\"Docker Stars\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://hub.docker.com/r/crazymax/firefox-syncserver/\"\u003e\u003cimg src=\"https://img.shields.io/docker/pulls/crazymax/firefox-syncserver.svg?style=flat-square\u0026logo=docker\" alt=\"Docker Pulls\"\u003e\u003c/a\u003e\n  \u003cbr /\u003e\u003ca href=\"https://github.com/sponsors/crazy-max\"\u003e\u003cimg src=\"https://img.shields.io/badge/sponsor-crazy--max-181717.svg?logo=github\u0026style=flat-square\" alt=\"Become a sponsor\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://www.paypal.me/crazyws\"\u003e\u003cimg src=\"https://img.shields.io/badge/donate-paypal-00457c.svg?logo=paypal\u0026style=flat-square\" alt=\"Donate Paypal\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n## ⚠️ Abandoned project\n\nThis project is not maintained anymore and is abandoned. Feel free to fork and\nmake your own changes if needed.\n\n## About\n\n[Firefox Sync Server](http://moz-services-docs.readthedocs.io/en/latest/howtos/run-sync-1.5.html)\nDocker image.\n\n\u003e **Note**\n\u003e \n\u003e Want to be notified of new releases? Check out 🔔 [Diun (Docker Image Update Notifier)](https://github.com/crazy-max/diun)\n\u003e project!\n\n___\n\n* [Features](#features)\n* [Build locally](#build-locally)\n* [Image](#image)\n* [Environment variables](#environment-variables)\n* [Volumes](#volumes)\n* [Ports](#ports)\n* [Usage](#usage)\n  * [Docker Compose](#docker-compose)\n  * [Command line](#command-line)\n* [Notes](#notes)\n  * [Use with MySQL database](#use-with-mysql-database)\n  * [Use with PostgreSQL database](#use-with-postgresql-database)\n* [Upgrade](#upgrade)\n* [Contributing](#contributing)\n* [License](#license)\n\n## Features\n\n* Run as non-root user\n* Multi-platform image\n* [Traefik](https://github.com/containous/traefik-library-image) as reverse proxy and creation/renewal of Let's Encrypt certificates (see [this template](examples/traefik))\n\n## Build locally\n\n```shell\ngit clone https://github.com/crazy-max/docker-firefox-syncserver.git\ncd docker-firefox-syncserver\n\n# Build image and output to docker (default)\ndocker buildx bake\n\n# Build multi-platform image\ndocker buildx bake image-all\n```\n\n## Image\n\n| Registry                                                                                         | Image                           |\n|--------------------------------------------------------------------------------------------------|---------------------------------|\n| [Docker Hub](https://hub.docker.com/r/crazymax/firefox-syncserver/)                                            | `crazymax/firefox-syncserver`                 |\n| [GitHub Container Registry](https://github.com/users/crazy-max/packages/container/package/firefox-syncserver)  | `ghcr.io/crazy-max/firefox-syncserver`        |\n\nFollowing platforms for this image are available:\n\n```\n$ docker run --rm mplatform/mquery crazymax/firefox-syncserver:latest\nImage: crazymax/firefox-syncserver:latest\n * Manifest List: Yes\n * Supported platforms:\n   - linux/amd64\n   - linux/arm/v6\n   - linux/arm/v7\n   - linux/arm64\n   - linux/386\n   - linux/ppc64le\n   - linux/s390x\n```\n\n## Environment variables\n\n* `TZ`: The timezone assigned to the container (default `UTC`)\n* `PUID`: Process UID (default `1000`)\n* `PGID`: Process GID (default `1000`)\n* `FF_SYNCSERVER_ACCESSLOG`: Display access log (default `false`)\n* `FF_SYNCSERVER_LOGLEVEL`: Log level output (default `info`)\n* `FF_SYNCSERVER_PUBLIC_URL`: Must be edited to point to the public URL of your server (default `http://localhost:5000`).\n* `FF_SYNCSERVER_SECRET`: This is a secret key used for signing authentication tokens. It should be long and randomly-generated.\n* `FF_SYNCSERVER_ALLOW_NEW_USERS`: Set this to `false` to disable new-user signups on the server. Only request by existing accounts will be honoured (default `true`).\n* `FF_SYNCSERVER_FORCE_WSGI_ENVIRON`: Set this to `true` 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 (default `false`).\n* `FF_SYNCSERVER_SQLURI`: Defines the database in which to store all server data (default `sqlite:///data/syncserver.db`).\n* `FF_SYNCSERVER_FORWARDED_ALLOW_IPS`: Set this to `*` or an IP range if you use an Nginx reverse proxy (optional). \n\n\u003e 💡 `FF_SYNCSERVER_SECRET_FILE` can be used to fill in the value from a file, especially for Docker's secrets feature.\n\n## Volumes\n\n* `/data`: Contains SQLite database if `FF_SYNCSERVER_SQLURI` is untouched\n\n\u003e :warning: Note that the volumes should be owned by the user/group with the specified `PUID` and `PGID`. If you don't give the volume correct permissions, the container may not start.\n\n## Ports\n\n* `5000`: Gunicorn port\n\n## Usage\n\n### Docker Compose\n\nDocker compose is the recommended way to run this image. You can use the following [docker compose template](examples/compose/docker-compose.yml), then run the container:\n\n```bash\ndocker-compose up -d\ndocker-compose logs -f\n```\n\n### Command line\n\nYou can also use the following minimal command:\n\n```bash\n$ docker run -d -p 5000:5000 --name firefox_syncserver \\\n  -e TZ=\"Europe/Paris\" \\\n  -e FF_SYNCSERVER_SECRET=\"5up3rS3kr1t\" \\\n  -v $(pwd)/data:/data \\\n  crazymax/firefox-syncserver:latest\n```\n\n## Notes\n\n### Use with MySQL database\n\nSet `FF_SYNCSERVER_SQLURI=pymysql://user:password@mysql_server_ip/db_name`\n\n### Use with PostgreSQL database\n\nSet `FF_SYNCSERVER_SQLURI=postgresql://user:password@postgresql_server_ip/db_name`\n\n## Upgrade\n\nRecreate the container whenever I push an update:\n\n```bash\ndocker-compose pull\ndocker-compose up -d\n```\n\n## Contributing\n\nWant to contribute? Awesome! The most basic way to show your support is to star the project, or to raise issues. You\ncan also support this project by [**becoming a sponsor on GitHub**](https://github.com/sponsors/crazy-max) or by making\na [Paypal donation](https://www.paypal.me/crazyws) to ensure this journey continues indefinitely!\n\nThanks again for your support, it is much appreciated! :pray:\n\n## License\n\nMIT. See `LICENSE` for more details.\n","funding_links":["https://github.com/sponsors/crazy-max","https://www.paypal.me/crazyws"],"categories":["Dockerfile","firefox"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcrazy-max%2Fdocker-firefox-syncserver","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcrazy-max%2Fdocker-firefox-syncserver","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcrazy-max%2Fdocker-firefox-syncserver/lists"}