启动一个可远程查看、可被程序自动控制的 Chromium 浏览器环境

它不是普通意义上的“远程 Chrome 桌面版”,而是一个 Selenium 控制的远程 Chromium 浏览器环境

启动一个 Selenium + Chromium 的 Docker 容器

Mac M 芯片上推荐chromium

Mac M1/M2/M3/M4 是 ARM64 架构。selenium/standalone-chrome 主要依赖 Google Chrome 的 Linux amd64 版本,在 M 芯片上通常要靠 QEMU 仿真,容易出现 VNC、Xvfb、Chrome 闪退等问题。

docker run -d \
  --name remote-chrome \
  --platform linux/arm64 \
  -p 7900:7900 \
  -p 4444:4444 \
  --shm-size="2g" \
  -e SE_VNC_PASSWORD='你设定一个密码' \
  selenium/standalone-chromium:latest

Windows推荐chrome

docker run -d \
  --name remote-chrome \
  --platform linux/arm64 \
  -p 7900:7900 \
  -p 4444:4444 \
  --shm-size="2g" \
  -e SE_VNC_PASSWORD='你设定一个密码' \
  selenium/standalone-chrome:latest

Docker参数讲解

-d
后台运行容器。

--name remote-chrome
给容器起名,方便后续 docker logs、docker stop、docker rm。

--platform linux/arm64
指定使用 ARM64 镜像,适配 Mac M 芯片。

-p 7900:7900
开放 noVNC 远程桌面端口。

-p 4444:4444
开放 Selenium WebDriver 端口。

--shm-size="2g"
增加共享内存,避免浏览器因为 /dev/shm 太小而崩溃。有条件的自行添加!

-e SE_VNC_PASSWORD='...'
设置 noVNC/VNC 访问密码。

selenium/standalone-chromium:latest
使用 Selenium 官方的 Chromium 独立镜像。

暴露端口详解

4444 = Selenium WebDriver 接口
7900 = noVNC 可视化远程桌面

访问远程桌面画面

http://localhost:7900

进入会让你输入密码,就是你Docker启动参数里面的密码。

内网穿透

如果需要内网穿透,目前我用的 PassNat,因为我自己飞牛Nas上面有这个集成好的内网穿透,所以我觉得挺好。6元,5个端口,20M带宽。有需要自己研究下即可,我不做过多介绍。

https://dashboard.passnat.com/reg?aff=eNJTAK

特殊说明:
上述文章均是作者实际操作后产出。烦请各位,请勿直接盗用!转载记得标注原文链接:www.zanglikun.com
第三方平台不会及时更新本文最新内容。如果发现本文资料不全,可访问本人的Java博客搜索:标题关键字。以获取最新全部资料 ❤

免责声明:
本站文章旨在总结学习互联网技术过程中的经验与见解。任何人不得将其用于违法或违规活动!所有违规内容均由个人自行承担,与作者无关。