selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

GitHub
Suwayomi-Server-docker logo

Self-host Suwayomi-Server-docker

Docker container for self-hosted manga reader server

ReleaseOpen SourceMPL-2.0
Updated4 months ago
LanguageShell
Setup difficultyEasy
Stars
573
Port
4567 (HTTP web UI and API)
Docker
ghcr.io/suwayomi/suwayomi-server
Install with Docker Compose

What is Suwayomi-Server-docker?

Suwayomi-Server Docker provides a containerized way to run the Suwayomi-Server manga reading application. It supports multiple manga sources through extensions, automated chapter updates and downloads, CBZ conversion, scheduled backups, and optional FlareSolverr integration for bypassing Cloudflare challenges. The server runs on port 4567 with a web UI for management. It can use an embedded H2 database or connect to PostgreSQL. Images are multi-arch (amd64, arm64, ppc64le, s390x, riscv64) and run as a non-root user. Installation is via Docker Compose, plain Docker, or Podman Quadlet.

Should you self-host Suwayomi-Server-docker?

Suwayomi-Server-docker scores 53/100 on selfhost.directory (how scoring works) and ranks #2 of 4 in Manga Reader. It has 573 GitHub stars.

There was no stable release in the past 12 months, so check the repository's recent activity before you rely on it.

Setup is easy: most people get it running in one sitting. An official Docker image is available. It is MPL-2.0-licensed and written mostly in Shell.

Its closest alternative on selfhost.directory is Suwayomi-Server (71/100, 7 957 stars). It scores higher overall, so compare the two before you pick. See Suwayomi-Server-docker vs Suwayomi-Server side by side.

Features

  • Automated Backups
  • Automated Updates
  • Chapter downloads
  • Extension System
  • Manga reading
  • Multiple auth modes
  • Non-root user
  • SOCKS5 proxy support
  • Web UI auto-update

Suwayomi-Server-docker README

How to install Suwayomi-Server-docker

Install Suwayomi-Server-docker with Docker Compose

Docker and Docker Compose installed
Environment variables
TZ, FLARESOLVERR_ENABLED, FLARESOLVERR_URL, BIND_IP, BIND_PORT, SOCKS_PROXY_ENABLED, DOWNLOAD_AS_CBZ, AUTH_MODE, AUTH_USERNAME, AUTH_PASSWORD, EXTENSION_STORES

Use the template docker-compose.yml in this repo for creating and starting tachidesk docker container.

  suwayomi_server:
    image: ghcr.io/suwayomi/suwayomi-server:stable
    container_name: Suwayomi-Server
    volumes: # The order matters! Make sure the downloads is first in the volume list or it will not work!
      - /example/suwayomi-server/downloads:/home/suwayomi/.local/share/Tachidesk/downloads
      - /example/suwayomi-server/files:/home/suwayomi/.local/share/Tachidesk
    ports:
      - 4568:4567
    restart: unless-stopped

Template available in repo

How to configure Suwayomi-Server-docker

  • AUTH_MODEnoneWhether Suwayomi requires a login to get in

    Whether Suwayomi requires a login to get in

    values: none, basic_auth, simple_login, ui_login

  • AUTH_PASSWORDThe password to log in to Suwayomi

    The password to log in to Suwayomi

  • AUTH_USERNAMEThe username to log in to Suwayomi

    The username to log in to Suwayomi

  • AUTO_BACKUP_INCLUDE_CATEGORIEStrueIf the auto-backup should include categories

    If the auto-backup should include categories

    values: true/false

  • AUTO_BACKUP_INCLUDE_CHAPTERStrueIf the auto-backup should include chapters

    If the auto-backup should include chapters

    values: true/false

  • AUTO_BACKUP_INCLUDE_CLIENT_DATAtrueIf the auto-backup should include client data

    If the auto-backup should include client data

    values: true/false

  • AUTO_BACKUP_INCLUDE_HISTORYtrueIf the auto-backup should include history

    If the auto-backup should include history

    values: true/false

  • AUTO_BACKUP_INCLUDE_MANGAtrueIf the auto-backup should include manga

    If the auto-backup should include manga

    values: true/false

  • AUTO_BACKUP_INCLUDE_SERVER_SETTINGStrueIf the auto-backup should include server settings

    If the auto-backup should include server settings

    values: true/false

  • AUTO_BACKUP_INCLUDE_TRACKINGtrueIf the auto-backup should include tracking

    If the auto-backup should include tracking

    values: true/false

  • BACKUP_INTERVAL1Interval in which the server will automatically create a backup

    Interval in which the server will automatically create a backup

    values: 1+ days, 0 to disable

  • BACKUP_TIME00:00Time of day at which the automated backup should be triggered

    Time of day at which the automated backup should be triggered

    values: hour: 0-23, minute: 0-59

  • BACKUP_TTL14How long backup files will be kept before they will get deleted

    How long backup files will be kept before they will get deleted

    values: 1+ days, 0 to disable

  • BIND_IP0.0.0.0The interface to listen on, inside the container

    The interface to listen on, inside the container

  • BIND_PORT4567Which port Suwayomi will listen on

    Which port Suwayomi will listen on

  • DATABASE_PASSWORDDatabase password, only used for non-h2 database

    Database password, only used for non-h2 database

  • DATABASE_SCHEMAsuwayomiThe name of the database schema that is going to be used

    The name of the database schema that is going to be used

  • DATABASE_TYPEH2Database type

    Database type

    values: H2, POSTGRESQL

  • DATABASE_URLpostgresql://localhost:5432/suwayomiThe URL of the database, only used for non-h2 database

    The URL of the database, only used for non-h2 database

  • DATABASE_USERNAMEDatabase username, only used for non-h2 database

    Database username, only used for non-h2 database

  • DEBUGfalseIf extra logging is enabled

    If extra logging is enabled

    values: true/false

  • DOWNLOAD_AS_CBZfalseWhether Suwayomi should save the manga to disk in CBZ format

    Whether Suwayomi should save the manga to disk in CBZ format

    values: true/false

  • FLARESOLVERR_ENABLEDfalseWhether FlareSolverr is enabled and available to use

    Whether FlareSolverr is enabled and available to use

    values: true/false

  • FLARESOLVERR_RESPONSE_AS_FALLBACKfalseUse the response from FlareSolverr if Suwayomi does not succeed

    Use the response from FlareSolverr if Suwayomi does not succeed

    values: true/false

  • FLARESOLVERR_SESSION_NAMEsuwayomiThe name of the session that Suwayomi will use with FlareSolverr

    The name of the session that Suwayomi will use with FlareSolverr

  • FLARESOLVERR_SESSION_TTL15The time to live for the FlareSolverr session

    The time to live for the FlareSolverr session

  • FLARESOLVERR_TIMEOUT60Time in seconds for FlareSolverr to timeout

    Time in seconds for FlareSolverr to timeout

  • FLARESOLVERR_URLhttp://localhost:8191The URL of the FlareSolverr instance

    The URL of the FlareSolverr instance

  • HIKARI_MAX_POOL_SIZEtrueThe maximum number of actual connections to the database

    The maximum number of actual connections to the database

  • JWT_AUDIENCEsuwayomi-server-apiThe JWT Audience of the ui_login token

    The JWT Audience of the ui_login token

  • JWT_REFRESH_EXPIRY60dThe JWT refresh token expiry timeout, in ISO-8601 Duration format

    The JWT refresh token expiry timeout, in ISO-8601 Duration format

  • JWT_TOKEN_EXPIRY5mThe JWT access token expiry timeout, in ISO-8601 Duration format

    The JWT access token expiry timeout, in ISO-8601 Duration format

  • KCEF_ENABLEDtrueEnable the WebView via CEF (Chromium)

    Enable the WebView via CEF (Chromium)

    values: true/false

  • MAX_LOG_FILES31The max number of days to keep files before they get deleted

    The max number of days to keep files before they get deleted

  • MAX_LOG_FILE_SIZE10mbThe max size of a log file

    The max size of a log file

    values: 1, 1KB, 1MB, 1GB

  • MAX_LOG_FOLDER_SIZE100mbThe max size of all saved log files

    The max size of all saved log files

    values: 1, 1KB, 1MB, 1GB

  • MAX_SOURCES_IN_PARALLEL6Sets how many sources can do requests in parallel

    Sets how many sources can do requests in parallel

    values: 1-20

  • SOCKS_PROXY_ENABLEDfalseWhether Suwayomi will connect through a SOCKS5 proxy

    Whether Suwayomi will connect through a SOCKS5 proxy

    values: true/false

  • SOCKS_PROXY_HOSTThe TCP host of the SOCKS proxy

    The TCP host of the SOCKS proxy

  • SOCKS_PROXY_PASSWORDThe password to log in to the SOCKS proxy

    The password to log in to the SOCKS proxy

  • SOCKS_PROXY_PORTThe port of the SOCKS proxy

    The port of the SOCKS proxy

  • SOCKS_PROXY_USERNAMEThe username to log in to the SOCKS proxy

    The username to log in to the SOCKS proxy

  • SOCKS_PROXY_VERSION5The version of the SOCKS proxy

    The version of the SOCKS proxy

  • TZEtc/UTCWhat time zone the container thinks it is

    What time zone the container thinks it is

    values: TZ database name

  • UPDATE_INTERVAL12Interval in which the global update will be automatically triggered

    Interval in which the global update will be automatically triggered

    values: 6+ hours, 0 to disable

  • USE_HIKARI_CONNECTION_POOLtrueUse Hikari Connection Pool to connect to the database

    Use Hikari Connection Pool to connect to the database

    values: true/false

  • WEB_UI_CHANNELstableThe webUI version that should be used

    The webUI version that should be used

    values: bundled, stable, preview

  • WEB_UI_ENABLEDtrueIf the server should serve a webUI

    If the server should serve a webUI

    values: true/false

  • WEB_UI_FLAVORWebUIWebUI flavor

    WebUI flavor

    values: WebUI, Custom

  • WEB_UI_UPDATE_INTERVAL23How often the server should check for webUI updates

    How often the server should check for webUI updates

    values: 1-23 hours, 0 to disable

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…