From dd0e09a34f9dcc65fdbe611480ca1983bd3b1ca9 Mon Sep 17 00:00:00 2001 From: hjq <770690987@qq.com> Date: Fri, 12 Jun 2026 16:59:21 +0800 Subject: [PATCH] =?UTF-8?q?Dockerfile=20=E9=83=A8=E7=BD=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- browser_login/login.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/browser_login/login.py b/browser_login/login.py index b2f82f2..7045363 100644 --- a/browser_login/login.py +++ b/browser_login/login.py @@ -50,7 +50,15 @@ def get_page(headless: bool = False, port: int = 9222) -> ChromiumPage: co.set_argument("--no-sandbox") co.set_argument("--disable-dev-shm-usage") # 增加这个参数防止容器内存不足 co.set_argument("--window-size=1440,900") - co.set_local_port(port) + + if is_docker: + # 在 Docker 生产环境中,为了防止僵尸进程占用固定端口导致 404 握手失败 + # 我们使用 auto_port(True) 让它每次都随机分配一个空闲端口,完全隔离 + co.auto_port(True) + else: + # 本地开发环境保持使用固定端口,方便复用已经打开的浏览器 + co.set_local_port(port) + return ChromiumPage(co)