- /group_vars/all.yml - /roles/flibusta/templates/docker-compose.yml.j2 - /roles/flibusta/tasks/main.yml
27 lines
945 B
Django/Jinja
27 lines
945 B
Django/Jinja
services:
|
||
flibusta:
|
||
image: "{{ flibusta_image }}"
|
||
container_name: flibusta
|
||
restart: unless-stopped
|
||
mem_limit: "2g" # ← жёстко, как у тебя везде (jellyfin/audiobookshelf ~2G)
|
||
security_opt:
|
||
- no-new-privileges:true
|
||
ports:
|
||
- "{{ int_ip }}:{{ flibusta_port }}:8080"
|
||
environment:
|
||
- TZ={{ timezone }}
|
||
- WEBDAV_ENABLED={{ flibusta_webdav_enabled | lower }}
|
||
- OPDS_ENABLED={{ flibusta_opds_enabled | lower }}
|
||
volumes:
|
||
- "{{ flibusta_base_dir }}/config:/app/config:rw"
|
||
- "{{ flibusta_base_dir }}/data:/app/rw:rw"
|
||
- "{{ flibusta_books_dir }}:/books:rw"
|
||
{% if flibusta_calibre_integration %}
|
||
- "{{ calibre_library_dir }}:/calibre:ro"
|
||
{% endif %}
|
||
healthcheck:
|
||
test: ["CMD", "curl", "-f", "http://localhost:8080/health"]
|
||
interval: 30s
|
||
timeout: 10s
|
||
retries: 3
|
||
start_period: 40s |