Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/b1n4ryj4n/koreader-sync
Simple implementation of the KOReader position sync server for self-hosting at home which has docker support for arm and amd64 :)
https://github.com/b1n4ryj4n/koreader-sync
amd64 arm docker koreader koreader-sync python python3 selfhosted
Last synced: 7 days ago
JSON representation
Simple implementation of the KOReader position sync server for self-hosting at home which has docker support for arm and amd64 :)
- Host: GitHub
- URL: https://github.com/b1n4ryj4n/koreader-sync
- Owner: b1n4ryj4n
- License: mit
- Created: 2021-09-15T05:41:27.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2024-05-24T15:26:32.000Z (6 months ago)
- Last Synced: 2024-08-02T17:35:16.481Z (3 months ago)
- Topics: amd64, arm, docker, koreader, koreader-sync, python, python3, selfhosted
- Language: Python
- Homepage:
- Size: 46.9 KB
- Stars: 37
- Watchers: 2
- Forks: 7
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Koreader position sync server
## Description
This is a simple implementation of the KOReader (https://github.com/koreader/koreader) position sync server for self-hosting at home which has docker support for arm and amd64 :) _This is a fork of https://github.com/myelsukov/koreader-sync but with a complete code rewrite._
## Dependencies* FastAPI : https://github.com/tiangolo/fastapi
* TinyDB: https://github.com/msiemens/tinydb
* Uvicorn: https://www.uvicorn.org/
* Python-dotenv: https://saurabh-kumar.com/python-dotenv/## Install and run
```bash
> pip install -r requirements.txt> uvicorn kosync:app --host 0.0.0.0 --port 8081
```
## Or via Docker
```bash
> docker build --rm=true --tag=kosync:latest .> docker compose up -d
```
## Environment Variables
* RECEIVE_RANDOM_DEVICE_ID ("True"|"False")
Set it true to retrieve always a random device id to force a progress sync.
This is usefull if you only sync your progress from one device and
usually delete the *.sdr files with some cleaning tools.* OPEN_REGISTRATIONS ("True"|"False")
Enable/disable new registrations to the server. Useful if you want to run a private server for a few users, although it doesn't necessarily improve security by itself.
Set to True (enabled) by default.## Dockerhub
There is also a dockerhub image available if you are not able to build yourself the image.
For linux/amd64 you can use `docker pull b1n4ryj4n/koreader-sync` and for linux/arm `docker pull b1n4ryj4n/koreader-sync:arm`
## Connection
* Use http://IP:8081 as custom sync server
* Recommendation: Setup a reverse proxy for example with Nginx Proxy Manager (https://nginxproxymanager.com/) to connect with https## Changelog
## [0.0.5] - 2024-05-24
### Added
- Merged ["Option to disable registration of new user accounts by env var."](https://github.com/b1n4ryj4n/koreader-sync/pull/5)## [0.0.4] - 2023-10-29
### Added
- Added the HEALTHCHECK command (also accessible via http://IP:8081/healthstatus)## [0.0.3] - 2022-03-20
### Added
- Added an environment variable option to receive always a random device id## [0.0.2] - 2022-02-21
### Added
- Merged ["Dockerfile: use multi-stage build to optimize image size"](https://github.com/b1n4ryj4n/koreader-sync/pull/3)## [0.0.1] - 2021-09-15
### Added
- First version