为了操作家里的群晖服务器,之前一直是通过 VPN 或是Todesk、向日葵连入家里旧电脑的 Win 桌面进行操作的,需要使用浏览器下载一些内容时也必须通过 Win 桌面挂机实现。就在最近这台挂机用的电脑出问题了,于是我在想能不能将浏览器塞入 Docker 直接连入局域网呢?

说干就干,网上搜索一番后,很快找到一位大神做好的 Docker 镜像,这款镜像原本是 『用在群晖、威联通等环境下的火狐浏览器』。当然,这款镜像也可以直接装在 VPS 里,做一个云端浏览器

https://imagehost-cdn.frytea.com/images/2021/11/12/imageb0e9f7913423b324.png

本文介绍的方法可以用于 云端服务器 或是 内网服务器 ,用在云端就成了个人专用云端浏览器,用在内网结合内网穿透技术就成了访问内网专用浏览器。

搭建流程也很简单,准备好服务器,两行命令就能跑起来,但其中的细节如果不太懂可能还需要查一查,可以先按照我的流程来操作,应该很快就能看到效果,后期有需要再根据需求修改。

搭建流程

首先需要准备一台 VPS,如果是群晖安装,类比配置即可。下面 SSH 连入虚拟机,开始操作。

Step1: 安装 Docker

如果 VPS 已经装过 Docker,可以跳过这一步。

这里直接使用 Docker 官方提供的一键安装脚本进行安装:

$ curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

 

根据自己服务器的所在位置确定是否加 --mirror Aliyun,若在国内需要加,境外则不需要。

https://imagehost-cdn.frytea.com/images/2021/11/12/2021-11-12-11.17.240c5b6652dd1d9286.png

装好后使用下面命令看一下运行状态:

$ docker ps
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES

如果 docker 服务未启动,使用 systemctl start docker 启动一下即可。

Step2: 启动容器

docker 跑起来后,就开始跑我们的 firefox 容器,直接运行下面命令即可快速开始:

$ docker run -d --name firefox -p 8083:8083 -p 5900:5900 oldiy/firefox-novnc:latest

 

如果服务器配有安全组策略或防火墙,请手动放通上面两个端口,若端口冲突,请自行更换 : 前面的端口为主机可用端口

等待命令执行完成,放通端口,即可进行下一步。

Step3: 远程连接

电脑浏览器访问 http://<Your IP>:8083/vnc.html 即可。

如果访问不了,请检查服务器防火墙以及云主机控制面板安全组策略是否放通对应端口。

如果一切顺利,将会看到下面页面:

https://imagehost-cdn.frytea.com/images/2021/11/12/2021-11-12-11.20.55a1c02ab563890073.png

点击连接即可,如果失败可以稍等一会儿刷新试试。

注:实测在 MacOS 12SafariFirefox 浏览器均无法使用,仅有 Chrome 可使用,原因未知,请使用 Chrome 继续。

https://imagehost-cdn.frytea.com/images/2021/11/12/2021-11-12-11.23.207febeeae22a60d28.png

上面就是打开的效果了,如果 VPS 在墙外则可以直接访问 Google ,如果装在在局域网内则可以直接访问内网服务。若想从外部直接访问局域网内的服务,可以了解一下 内网穿透 技术。

至此,配置完成,是不是也没有那么难。

拓展流程

上面的流程就可以迅速看到效果,如果还有特别的需求可以自己定制探索,比如可以像这样增加访问密码:

https://imagehost-cdn.frytea.com/images/2021/11/12/2021-11-12-11.31.091819675061ec73ad.png

还可以像这样挂载目录,可以直接当做一个挂机下载工具使用。

https://imagehost-cdn.frytea.com/images/2021/11/12/image62d4cc873196a017.png

如果想知道这些扩展技巧如何使用,可以来我的博客原文查看,后期一些新的有意思的点也会在博客里实时更新,如果有什么想法或是需求也欢迎给我留言,一同探索。

原文链接: www.frytea.com/technology/tips/setting-up-cloud-browser-using-vps/

总结

其实镜像作者还提供了多种镜像,使用下来发现 火狐 比较稳定,因此本文就以这款为例进行整理了,有兴趣也可折腾下其他镜像。

早在很久之前我就在思考能否直接在 Linux 机器上装一个浏览器,之后远程访问。但受限于当时的技术知识有限,暂时没有找到合适的方法,远程桌面只能采用 Windows 的方法,看着 win 系统空耗资源没办法。

现在终于找了一种比较好的轻量级远程浏览器的解决方案了,在这里分享给大家,具体能做些什么还需发挥些想象力,结合自己的需求实现。

参考文献

3
1