Прокси для заблокированных источников: network_mode host + globalproxy/useproxy
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
---
|
||||
# Lampac — primary Compose file (production-like run on your machine). Use `docker compose up -d` from the repo root.
|
||||
#
|
||||
# BEFORE you uncomment `volumes` below:
|
||||
# 1. Create host dirs: mkdir -p lampac-docker/config lampac-docker/plugins
|
||||
# 2. Copy config: cp config/example.init.conf lampac-docker/config/init.conf
|
||||
# 3. Root password (one line): printf '%s' 'your_strong_password' > lampac-docker/config/passwd
|
||||
# 4. Uncomment the entire `volumes:` block (and each volume line under it).
|
||||
#
|
||||
# If you skip step 4, the container uses init.conf/passwd baked into the image — host files are ignored.
|
||||
# Full walkthrough: README.md → «Быстрый старт» → Docker.
|
||||
#
|
||||
name: lampac
|
||||
|
||||
services:
|
||||
lampac:
|
||||
image: ghcr.io/lampac-nextgen/lampac
|
||||
container_name: lampac
|
||||
# Use host networking instead of bridge below: uncomment the next line and remove or adjust `ports` / `networks`.
|
||||
# network_mode: host
|
||||
networks:
|
||||
lampac:
|
||||
ipv4_address: 10.10.10.10
|
||||
ports:
|
||||
- 9118:9118
|
||||
restart: unless-stopped
|
||||
shm_size: 1024mb
|
||||
logging:
|
||||
options:
|
||||
tag: "{{.Name}}"
|
||||
# --- Mount your own files (commented by default). Paths are relative to this compose file. ---
|
||||
# volumes:
|
||||
# # Required for custom setup: root password (WebLog, etc.) → must exist on host before `up`
|
||||
# - ./lampac-docker/config/passwd:/lampac/passwd
|
||||
# # Main JSON/YAML config (hot-reloaded). In-container path is always /lampac/init.conf
|
||||
# - ./lampac-docker/config/init.conf:/lampac/init.conf
|
||||
# # Optional: extra user module dir (see README → Docker → manifest.json). Example name is illustrative.
|
||||
# - ./lampac-docker/mods/BulbaCrawler:/lampac/mods/BulbaCrawler
|
||||
# # Optional: Lampa client plugin override
|
||||
# - ./lampac-docker/plugins/lampainit.js:/lampac/plugins/override/lampainit.js
|
||||
# # Optional: persist cache across restarts
|
||||
# - ./lampac-docker/cache:/lampac/cache
|
||||
# # Optional: persist SQLite / local DB dirs
|
||||
# - ./lampac-docker/database:/lampac/database
|
||||
|
||||
networks:
|
||||
lampac:
|
||||
name: lampac
|
||||
driver: bridge
|
||||
ipam:
|
||||
config:
|
||||
- subnet: 10.10.10.0/24
|
||||
+7
-6
@@ -1,14 +1,15 @@
|
||||
name: lampac
|
||||
|
||||
# Lampac NextGen — backend-сервер для приложения Lampa (LAN-only).
|
||||
# Порт слушается ТОЛЬКО на LAN-интерфейсе 192.168.1.80, без Traefik.
|
||||
# Внутри контейнера слушатель — 0.0.0.0:9118 (см. lampac-docker/config/init.conf).
|
||||
# Lampac NextGen — backend-сервер для приложения Lampa.
|
||||
# Сетевой режим: host — контейнеру нужен доступ к хостовому sing-box (127.0.0.1:1080),
|
||||
# через который проксируются заблокированные источники (kinogo.media, kinobase.org и др.).
|
||||
# LAN-only сохраняется за счёт listen.ip = 192.168.1.80 в lampac-docker/config/init.conf,
|
||||
# поэтому блок `ports:` здесь не нужен (при network_mode: host он ещё и несовместим).
|
||||
services:
|
||||
lampac:
|
||||
image: ghcr.io/lampac-nextgen/lampac:latest
|
||||
container_name: lampac
|
||||
ports:
|
||||
- "${LAMPAC_BIND}:${LAMPAC_PORT}:9118"
|
||||
network_mode: host
|
||||
restart: unless-stopped
|
||||
# Chrome/Playwright активно ест shared memory — 64 МБ по умолчанию мало
|
||||
shm_size: 1024mb
|
||||
@@ -18,7 +19,7 @@ services:
|
||||
volumes:
|
||||
# Конфиг (hot-reload, применяется без перезапуска)
|
||||
- ./lampac-docker/config/init.conf:/lampac/init.conf
|
||||
# Root-пароль для служебных функций (WebLog/AdminPanel). Файл: chmod 600, в .gitignore
|
||||
# Root-пароль для служебных функций (WebLog/DatabaseEditor). Файл: chmod 600, в .gitignore
|
||||
- ./lampac-docker/config/passwd:/lampac/passwd
|
||||
# Файловый кеш
|
||||
- ./lampac-docker/cache:/lampac/cache
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"listen": {
|
||||
"version": true,
|
||||
"ip": "0.0.0.0",
|
||||
"ip": "192.168.1.80",
|
||||
"port": 9118,
|
||||
"scheme": "http",
|
||||
"localhost": "127.0.0.1"
|
||||
@@ -33,6 +33,34 @@
|
||||
"timecode": true
|
||||
}
|
||||
},
|
||||
"proxy": {
|
||||
"list": [
|
||||
"socks5h://127.0.0.1:1080"
|
||||
],
|
||||
"maxRequestError": 2
|
||||
},
|
||||
"globalproxy": [
|
||||
{
|
||||
"name": "vpn",
|
||||
"pattern": "(kodik-api|kodikplayer|api\\.anilibria\\.app|anime1\\.best|rstprgapipt|kinogo\\.media|kinobase\\.org|coldfilm\\.ink|zet-flix|anilib\\.me|aniboom\\.one)",
|
||||
"list": [
|
||||
"socks5h://127.0.0.1:1080"
|
||||
],
|
||||
"maxRequestError": 2
|
||||
}
|
||||
],
|
||||
"VideoDB": {
|
||||
"useproxy": true
|
||||
},
|
||||
"Kinobase": {
|
||||
"useproxy": true
|
||||
},
|
||||
"Vibix": {
|
||||
"useproxy": true
|
||||
},
|
||||
"VeoVeo": {
|
||||
"useproxy": true
|
||||
},
|
||||
"chromium": {
|
||||
"enable": true,
|
||||
"executablePath": "/usr/bin/chromium"
|
||||
|
||||
Reference in New Issue
Block a user