公司用的日本专线,狡猾的日本人为了防止上班摸鱼把博客园都屏蔽了,使用中文搜索问题检索结果永远只有 CSDN 和内容农场……
恰巧看到这个贴子:使用 Docker 安装 Firefox 浏览器让小鸡发光发热,看了下最终的效果是能在浏览器标签内构建一个 Firefox 浏览器,无视本机的任何防火墙限制,立马决定试下。
最终的效果如下,你可以先确定是否符合你的需求再往下看,说一句视频是肯定看不了的,页面的刷新能看到较为明显的渲染过程:
且请使用 2 核以上的服务器,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 的赠金开的服务器,而且是上班开机下班删机的那种,因此暂时没有再做进一步的安全配置。
结束。