You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在群晖NAS部署undetected-chromedriver Docker并通过Python远程连接

部署及连接undetected-chromedriver Docker镜像操作步骤

1. 拉取镜像

你可以直接在群晖Docker套件的镜像仓库搜索bruvv/undetected_chromedriver在线拉取,也可以SSH登录群晖后执行拉取命令:
docker pull bruvv/undetected_chromedriver

2. 启动容器

执行以下启动命令,和你之前使用selenium standalone chrome的配置逻辑兼容,端口默认复用4444不用修改原有连接地址:

docker run -d \
  -p 4444:4444 \
  --shm-size 2g \
  --restart unless-stopped \
  --name undetected-chrome \
  bruvv/undetected_chromedriver

参数说明:

  • --shm-size 2g:给容器分配2G共享内存,避免Chrome运行时内存不足崩溃
  • --restart unless-stopped:设置容器随群晖开机自动启动,不需要可以删掉
  • 如果你需要从局域网其他设备访问该服务,可以把端口映射改为0.0.0.0:4444:4444,同时放行群晖防火墙的4444端口

3. NAS本地Python连接配置

首先确保你的Python环境已经安装undetected-chromedriver依赖:
pip install undetected-chromedriver

连接代码示例,和你之前使用webdriver.Remote的逻辑基本一致,仅需替换驱动类即可:

import undetected_chromedriver as uc

# 配置Chrome启动参数
chrome_options = uc.ChromeOptions()
# 按需添加参数,比如无头模式、禁用沙箱等
chrome_options.add_argument("--headless=new")
chrome_options.add_argument("--no-sandbox")
chrome_options.add_argument("--disable-dev-shm-usage")

# 连接远程容器的undetected-chromedriver服务
driver = uc.Remote(
    command_executor="http://127.0.0.1:4444/wd/hub",
    options=chrome_options
)

# 测试功能
driver.get("https://www.example.com")
print(driver.page_source[:200])
driver.quit()

常见问题排查

  • 连接失败先查看容器运行日志,如果是Chrome启动报错,可以在启动容器时添加--privileged参数临时测试权限问题
  • 出现版本不兼容报错时,保证本地Python安装的undetected-chromedriver版本和Docker镜像内置的版本一致即可

内容的提问来源于stack exchange,提问作者Bijan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 01:45:03