Tor support, use SeleniumBase instead of DrissionPage (#123)

Refactor: Improve Docker build, add Tor support, use SeleniumBase

- Overhauled Dockerfile:
    - Switched to python:3.10-slim base.
    - Implemented multi-stage builds (base, standard, tor).
    - Consolidated RUN layers for efficiency.
    - Added locale/timezone setup.
- Added Tor setup and iptables configuration in dedicated stage/script.
- Replaced DrissionPage with SeleniumBase for Cloudflare bypassing.
- Added Tor support via `docker-compose.tor.yml` and `tor.sh` script.
- Updated `docker-compose.yml` to build locally and changed default port
to 8083.
- Added `docker-compose.dev.yml` and `docker-compose.tor.dev.yml`.
- Updated `entrypoint.sh` for timezone and sudo usage.
- Added/Updated environment variables (`TZ`, `USING_TOR`, etc.).
- Improved `.dockerignore`.
- Updated `readme.md` to reflect port changes, build process, document
`TZ`, and add details about the new Tor variant.
This commit is contained in:
CaliBrain
2025-04-13 02:34:39 -04:00
committed by GitHub
parent e0e7470ac6
commit 57f15b4d95
18 changed files with 602 additions and 277 deletions
+15
View File
@@ -0,0 +1,15 @@
services:
calibre-web-automated-book-downloader-tor-dev:
extends:
file: ./docker-compose.yml
service: calibre-web-automated-book-downloader-tor
build:
context: .
dockerfile: Dockerfile
target: cwa-bd-tor
cap_add:
- NET_ADMIN
- NET_RAW
environment:
LOG_LEVEL: debug
FLASK_DEBUG: true