Skip to content
Go back

【归档文章】CentOS7 下用 Docker 部署 Firefox 以实现浏览器套浏览器访问被屏蔽的网站

| 0 Views Edit page

关于 Docker 配置代理的教程。

注:这篇文章是从旧的博客系统中迁移过来的、我觉得还存在价值的文章。但是由于时间关系,可能已经不再是最佳实践,请仅作参考。

公司用的日本专线,日方为了防止上班摸鱼把博客园都屏蔽了,使用中文搜索问题检索结果永远只有 CSDN 和内容农场…
恰巧看到这个贴子:使用 Docker 安装 Firefox 浏览器让小鸡发光发热,看了下最终的效果是能在浏览器标签内构建一个 Firefox 浏览器,无视本机的任何防火墙限制,立马决定试下。

最终的效果如下,你可以先确定是否符合你的需求再往下看,说一句视频是肯定看不了的,页面的刷新能看到较为明显的渲染过程:
最终效果
且请使用 2 核以上的服务器,1H2G 服务器在页面刷新时占用如下:
1H2G 占用


1、安装 Docker 和下载 Firefox 容器镜像

一笔带过 CentOS7 下 Docker 的安装和启动:

yum -y install docker
service docker start

下载镜像,Docker Hub 地址:jlesage/firefox

docker pull jlesage/firefox

2、启动容器

基础启动命令:

docker run -d \
--name=firefox \
-e TZ=Asia/Hong_Kong \
-e DISPLAY_WIDTH=1920 \
-e DISPLAY_HEIGHT=1080 \
-e KEEP_APP_RUNNING=1 \
-e ENABLE_CJK_FONT=1 \
-e VNC_PASSWORD=my_password \
-p 80:5800 \
--security-opt seccomp=unconfined --shm-size 4000m \
jlesage/firefox

参数解析:

参数解释样例
TZ时区。Asia/Hong_Kong
DISPLAY_WIDTH浏览器分辨率长。1920
DISPLAY_HEIGHT浏览器分辨率高。1080
KEEP_APP_RUNNING是否保持运行。不保持的话选 0,即所有标签关闭后容器停止。1
ENABLE_CJK_FONT字体选项?反正不开启中文会乱码。1
VNC_PASSWORD访问密码。my_password

端口映射不说了,容器内的 5800 端口映射到宿主机的 80 端口,这样就能直接用宿主机的 IP 访问服务了;--security-opt seccomp=unconfined 允许容器执行全部的系统的调用,即给予容器最大权限;--shm-size 4000m 限制容器内存占用。

开放端口和安全组之后,直接使用服务器 IP 访问即可:
输入密码
访问成功

由于我使用的是 Linode 的赠金开的服务器,而且是上班开机下班删机的那种,因此暂时没有再做进一步的安全配置。

结束。


Edit page