With CWA_ENABLED=false, Bindery ignores the CWA settings, makes no request to CWA, and shows nothing about CWA in the log and the web interface. A set INGEST_DIR still gets each changed book as a plain epub. Without it, the log names each CWA function that a missing setting turns off.
55 lines
2.8 KiB
YAML
55 lines
2.8 KiB
YAML
services:
|
|
bindery:
|
|
build: .
|
|
image: bindery:latest
|
|
# The user and group that own ./config and can write CWA's ingest folder. Usually the same as CWA's.
|
|
user: "1000:1000"
|
|
environment:
|
|
# Without CWA: set this, and remove the CWA values below. INGEST_DIR then gets the built ePubs.
|
|
# CWA_ENABLED: "false"
|
|
# Omit this and its volume mount to keep uploads paused.
|
|
INGEST_DIR: /cwa-book-ingest
|
|
# The address of CWA, as the Bindery container reaches it, and the CWA account that Bindery uses.
|
|
# Leave the account out if CWA asks for no login.
|
|
CWA_URL: http://calibre-web-automated:8083
|
|
CWA_USERNAME: bindery
|
|
CWA_PASSWORD: change-me
|
|
# none, local (one Bindery account), cwa (CWA accounts), or proxy (a trusted user header)
|
|
AUTH_METHOD: cwa
|
|
# For local logins, put these values in .env. See "Local login" in the README.
|
|
# BINDERY_USERNAME: ${BINDERY_USERNAME:-}
|
|
# BINDERY_PASSWORD_HASH: ${BINDERY_PASSWORD_HASH:-}
|
|
# Optional and independent. app.db is for logins, metadata.db is for book IDs.
|
|
# CWA_DB_PATH: /cwa-config/app.db
|
|
# CALIBRE_DB_PATH: /calibre-library/metadata.db
|
|
# URL_BASE: /bindery
|
|
# The host names that Bindery answers to. AUTH_METHOD=none needs this for a public name such as this one.
|
|
# ALLOWED_HOSTS: bindery.example.com
|
|
# true only if clients reach Bindery through a reverse proxy alone. The login lockout then uses X-Forwarded-For.
|
|
# TRUST_PROXY: "true"
|
|
# For AUTH_METHOD=proxy: the address of the proxy. The default trusts each private address.
|
|
# PROXY_AUTH_TRUSTED_IPS: 172.18.0.3
|
|
# For the cwa and proxy modes: the users that can change the global settings. Without a list, each user can.
|
|
# BINDERY_ADMIN_USERS: alice, bob
|
|
# BINDERY_API_KEY: a-long-random-string
|
|
ports:
|
|
# If a reverse proxy on this host is the only way in, publish the port only on the host: 127.0.0.1:8085:8085
|
|
- 8085:8085
|
|
restart: unless-stopped
|
|
# /api/health needs no login, and works with and without URL_BASE.
|
|
healthcheck:
|
|
test: ["CMD", "python", "-c", "import urllib.request; urllib.request.urlopen('http://127.0.0.1:8085/api/health', timeout=5)"]
|
|
interval: 60s
|
|
timeout: 10s
|
|
start_period: 30s
|
|
retries: 3
|
|
volumes:
|
|
# CWA's ingest folder. New stories and updates go here. Bindery does not make the folder.
|
|
- /path/to/cwa/ingest:/cwa-book-ingest
|
|
# The story database and personal.ini. Create the folder before the first start.
|
|
- ./config:/config
|
|
# Optional read-only folders. Include SQLite journal files beside each database.
|
|
# Mount the library that receives the ingest files, not a copy or another library.
|
|
# - /path/to/cwa/config:/cwa-config:ro
|
|
# - /path/to/calibre/library:/calibre-library:ro
|