家庭服务器 篇二十六:用docker运行一个Firefox浏览器
今天介绍通过docker运行Firefox浏览器。你可能会问这有什么用?是这样的,因为我的x86路由没有安装ESXi和PVE,只有一个单独的OpenERT,但偶尔需要配置其它设备(诸如光猫、路由等),这需要用到浏览器。于是就有了这个解决方案:
jlesage/firefox是一个开源项目。我习惯用docker-compose搭建容器,首先在Linux设备上安装docker和docker-compose(为什么我偏爱docker-compose,因为有docker-compose.yaml文件留底,方便找到自己修改过的设置)。将下面的内容保存为docker-compose.yaml:
version: '3.3'
services:
firefox:
container_name: firefox
ports:
- '1001:5800'
volumes:
- './firefox:/config:rw'
environment:
- LANG=zh_CN.UTF-8
image: jlesage/firefox
然后新建一个firefox的文件夹,把docker-compose.yaml放进去,然后运行容器命令:
docker-compose up -d
注意此时的firefox不支持中文的显示,中文全部为乱码。官方指导文件里说需要在environment添加“- ENABLE_CJK_FONT=1”这个参数。事实上我添加这个参数后遇到了容器无法访问的问题,所以如果你也遇到这个问题可以用我下面的方法。
首先下载一个中文字体,比如阿里巴巴普惠体等,或者从电脑上拷贝一个微软雅黑的字体到小主机。
然后运行docker ps查看jlesage/firefox的容器ID
然后用下面的命令把字体文件拷贝到容器里:
docker cp 字体文件地址 docker名称:/usr/share/fonts
#举例 docker cp /mnt/sata2-1/docker-compose/firefox/AlibabaPuHuiTi.ttf 8a373b071ebe:/usr/share/fonts
这样就能正常运行firefox了。注意这个firefox依然使用有局限,就是不能输入中文,只能通过界面的剪切板工具先输入后,再到浏览器中进行拷贝。好在只是配置设备不需要经常输入中文。
注意通过docker搭建浏览器的性能开销很大(超过在Windows系统中直接使用,尤其是看视频对CPU的开销更大)。所以这个浏览器容器不需要长期运行,只需要在需要的时候打开即可,下图分别是看视频时和关闭时性能占用情况:
有了这个浏览器,即使我的x86路由没有桌面环境,可以通过浏览器里的浏览器配置其它设备了。
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~
神奇萝卜
校验提示文案
我就是cy
校验提示文案
值9527友
校验提示文案
wainyang
校验提示文案
值友1311110754
校验提示文案
值友1311110754
校验提示文案
ipqwcwxk
校验提示文案
白菜价了
校验提示文案
白菜价了
校验提示文案
ipqwcwxk
校验提示文案
值友1311110754
校验提示文案
值友1311110754
校验提示文案
wainyang
校验提示文案
神奇萝卜
校验提示文案
值9527友
校验提示文案
我就是cy
校验提示文案