anki-sync-server/README.md

78 lines
2.2 KiB
Markdown

# Anki Sync Server
This project sets up an Anki synchronization server in a Docker environment, making it easy to host your own Anki synchronization service.
## Features
- Dockerized Anki Sync Server.
- Entry point script for the server to facilitate user configuration.
- systemd service file for ease of management and auto-start of the Anki sync service.
- Installation script for automated setup.
- Sample environment file to set configurations.
## Prerequisites
- Docker
- Docker Compose
- Git
## Installation
1. Clone this repository:
```bash
git clone https://git.rudefox.io/bj/anki-sync-server.git /var/lib/anki-server
cd /var/lib/anki-server
```
2. Run the installation script (with root privileges):
```bash
sudo ./install.sh
```
3. Remember to set up the necessary environment variables in the `.env` file.
- For a quick start, a `sample.env` file has been provided.
4. Ensure that the `data` directory is created and has the appropriate permissions:
```bash
mkdir data
```
5. Start the service:
```bash
systemctl start anki-sync-server
```
To enable auto-start on boot:
```bash
systemctl enable anki-sync-server
```
## Configuration
Most of the server's configurations are managed through the `.env` file. After the initial setup, ensure to modify this file according to your requirements.
Here are some key environment variables:
- `ANKISYNCD_DATA_ROOT`: Path to the data root directory inside the container.
- `ANKISYNCD_AUTH_DB_PATH`: Path to the authentication database.
- `ANKISYNCD_SESSION_DB_PATH`: Path to the session database.
- `SYNC_USERS`: Users for the synchronization server.
- `ANKI_PORT`: Port on which the Anki server should run.
- `ANKI_VOLUME_PATH`: Local path for the volume storage.
### Username and Password Configuration
1. Inside the `.env` file, locate the `SYNC_USERS` variable.
2. Enter the desired usernames and passwords in the format: `username:password`.
- For multiple users, separate them with a comma: `user1:pass1,user2:pass2`.
3. Save the changes and restart the Anki sync service.
## Maintenance
- **Backup**: Ensure to backup your `data` directory regularly.
- **Updates**: To update the service, pull the latest changes from the repository and restart the service.