Sign inSign up

jeankhawand/anki-sync-server

By jeankhawand

•Updated about 2 months ago

Maintained anki sync server for seamless deck synchronization.

Image
API management
Content management system
Databases & storage
7

10K+

jeankhawand/anki-sync-server repository overview

⁠‼️ Disclaimer ‼️

I will ensure the images are updated with each release. However, there may be occasional discrepancies between the image tags and newer releases. This is due to the progressive nature of updates, which are dependent on whether changes impact the server code.

For upgrading⁠ to 25+

⁠Simple Tags

26.08, 26.05, 25.07, 25.02.6, 24.11, 24.04.1 ,24.04 , 23.12.1, 23.10

⁠Distroless Tags

26.08-distroless,26.05-distroless, 25.07-distroless, 25.02.6-distroless, 24.11-distroless

⁠Supported architectures

amd64, arm64

⁠Source of this description

you can find it under ankitects/anki/tree/main/docs/syncserver⁠

⁠How to use this image

In order to run sync server you must provide at least SYNC_USER1

# Create container with single user
docker run -d  -e "SYNC_USER1=admin:admin" -p 8080:8080 --name anki-sync-server  jeankhawand/anki-sync-server:<tag>

By default anki server will store collections and media under ~/.syncserver, For the simple tag, we hardcode the use of persistent volume claim /anki_data which is used for SYNC_BASE and SYNC_PORT is set to 8080 (assuming you will run this service behind a proxy, hence we don't recommend overriding them), whereas the distroless tag falls back to all defaults without hardcoding anything.

if you want to have multiple users, you have to use the following approach:

# Create container with mutli-user
docker run -d -e "SYNC_USER1=test:test" -e "SYNC_USER2=test2:test2" -p 8080:8080 --name anki-sync-server  jeankhawand/anki-sync-server:<tag>

you can pass additional environment variables⁠

⁠Docker compose example

If you prefer to use docker-compose to run your stack, here's a sample service definition.

services:
  anki_sync_server:
    image:  jeankhawand/anki-sync-server:<tag>
    restart: unless-stopped
    ports:
      - "8080:8080"
    env:
      - SYNC_USER1="admin:admin"
    volumes:
      # for distroless tags /root/.syncserver
      - anki_data:/root
      # for simple tags 25.02.6+ before it used to be /home/anki
      - anki_data:/anki_data

volumes:
  anki_data:

⁠Known Issues

  • If you encountered issue where docker report that the container is unhealthy consider disabling IPv6 by passing this systctl net.ipv6.conf.all.disable_ipv6: 1 fixed starting 25.02.6+

Tag summary

Content type

Image

Digest

sha256:55d51cac2…

Size

11.9 MB

Last updated

about 2 months ago

docker pull jeankhawand/anki-sync-server:26.08