onesvm-browser-server/stacks/compose-smoke.yml
chii eb972dfa93 feat: 落地 browser-server 控制面并打通 mgr1 海外订阅
单二进制三角色 + Dock 适配器 + Swarm stack 达到可部署态;mgr1 实测订阅经 central-proxy bootstrap,探活 alive=41/52。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 15:05:12 +08:00

86 lines
No EOL
2.9 KiB
YAML
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# stacks/compose-smoke.yml — 本机冒烟 compose(不起 swarm;Contract §5-A6.4)。
#
# 拓扑:stub 引擎(python:3.12-slim,searxng/trafilatura 形状二合一)
# + browser-server 三角色(本机 arm64 构建镜像 onesvm/browser-server:smoke)。
# 密钥为 smoke 专用假值(非真实凭据;不入 git 的敏感面——冒烟值无真实性)。
# 用法:bash scripts/smoke-local.sh(含 build/up/断言/down 全流程)。
services:
stub-engines:
image: python:3.12-slim
container_name: bs-smoke-stub
volumes:
- ./smoke/stub_engines.py:/stub_engines.py:ro
command: ["python", "-u", "/stub_engines.py"]
networks:
- bs-smoke-net
gateway:
image: onesvm/browser-server:smoke
container_name: bs-smoke-gateway
command: ["-role=gateway"]
environment:
BROWSER_SERVER_KEYS_SEED: "smoke-seed-not-a-real-secret"
BROWSER_SERVER_ADMIN_TOKEN: "bs_smoke_admin_token_0123456789abcdef"
BROWSER_SERVER_LISTEN_gateway: ":8640"
BROWSER_SERVER_SCHEDULER_URL: http://scheduler:8641
BROWSER_SERVER_DB_PATH: /data/browser-server.db
TZ: Asia/Shanghai
volumes:
- bs-smoke-data:/data
ports:
- "18640:8640" # 本机冒烟入口(对齐 W2 回执 :18640 惯例)
depends_on:
- scheduler
- stub-engines
networks:
- bs-smoke-net
scheduler:
image: onesvm/browser-server:smoke
container_name: bs-smoke-scheduler
command: ["-role=scheduler"]
environment:
BROWSER_SERVER_LISTEN_scheduler: ":8641"
BROWSER_SERVER_DB_PATH: /data/browser-server.db
BROWSER_SERVER_SEARXNG_CN_URL: http://stub-engines:80
BROWSER_SERVER_SEARXNG_GLOBAL_URL: http://stub-engines:80
BROWSER_SERVER_TRAFILATURA_URL: http://stub-engines:80
BROWSER_SERVER_LIGHTPANDA_CDP_HOST: stub-engines:9222
BROWSER_SERVER_SHELL_CDP_HOST: stub-engines:9222
BROWSER_SERVER_PROXYMANAGER_URL: http://proxymanager:8642
BROWSER_SERVER_WORKERS: "4"
TZ: Asia/Shanghai
volumes:
- bs-smoke-data:/data
ports:
- "18641:8641" # 冒烟断言 /pressure 用
depends_on:
- stub-engines
networks:
- bs-smoke-net
proxymanager:
image: onesvm/browser-server:smoke
container_name: bs-smoke-proxymanager
command: ["-role=proxymanager"]
environment:
BROWSER_SERVER_LISTEN_proxymanager: ":8642"
PROXY_SUB_URLS: "http://stub-engines.invalid/sub.yaml" # 假订阅 URL(冒烟纪律:订阅类 env 用假 URL)
MIHOMO_CONTROLLER_URL: http://127.0.0.1:19990 # 无 mihomo 容器 → 探活 fail-closed 路径
BROWSER_SERVER_MIHOMO_CONFIG_DIR: /data/mihomo
BROWSER_SERVER_DB_PATH: /data/browser-server.db
TZ: Asia/Shanghai
volumes:
- bs-smoke-data:/data
depends_on:
- gateway
networks:
- bs-smoke-net
networks:
bs-smoke-net:
driver: bridge
volumes:
bs-smoke-data: {}