type
status
date
slug
summary
tags
category
icon
password
 
 
 

你问我有什么用?

 
有时候需要家里的小主机运行一些浏览器任务,但是又没有桌面环境,安装一个桌面又觉得太臃肿,而且会提升整机功耗
 
那么有没有一种东西可以单独开一个浏览器并且可以远程访问呢?
 
搜索了一下,确实有这种东西🤣
 
 
Q:为什么不用自己电脑的浏览器?
A:因为有些任务是很长期的,比如挂着某个网页视频很长时间(刷课),如果用自己的电脑,那电脑就不能关
 
Q:有什么优点?
A:1. 不用为小主机添加桌面环境,想用就启动容器,不用就关闭,减少功耗
2. 减少自己电脑的负担,不用长时间开机
3. 远程访问
 
 
注定是个小众需求,恰好我喜欢小众
 
notion image
 
 
 

安装

 
确保你安装了docker和docker compose😌
 
 

Pull & Up 容器

 
新建一个文件夹用于存放容器的配置
 
vim一个docker-compose.yml文件,写入以下内容,相关环境变量参考🔗Github文档
 
 
🫢 小插曲 我查了很多文章,估计都是很老的或者是别人搬运的,我按照他们的方法,firefox一直无法访问,后来我在github上跟作者聊了一下,看了下容器日志,发现是有几个包因为网络问题下载不了,加个镜像源就OK了
 
 
docker compose up -d启动容器
 
如果没有问题的话,浏览器输入IP+端口号就可以访问firefox了,如果设置了访问密码,密码是VNC_PASSWORD的值
 
notion image
 
 
如果访问不了firefox,docker logs <容器名称>看看日志
 
 
 

HTTPS加密访问

 
可能你也注意到了,明明开启了https,但是在访问时却显示不安全
 
notion image
 
 
因为默认生成的SSL证书是自签名证书,浏览器会报风险,所以我们要手动修改为我们自己可信的证书
 
 
目录结构
 
 
config/certs目录下有几个证书,对应Web访问的就是web-fullchain.pemweb-privkey.pem这两个证书文件
 
我们只需要替换掉这两个文件即可,但是要把自己的证书文件重命名为这两个
 
 
删掉原来的证书
 
复制自己的证书过去,因为我的证书是acme.sh安装的,这里使用acme.sh安装证书
 
安装完成后,docker restart <容器名称>重启容器
 
 
notion image
 
此时就是https加密访问了,由于容器自带nginx反代,所以我们不用配置反代即可通过域名远程访问
 
 
 

令人费解的点

 

稍微有点卡…

 
可能是我网络问题或者是小主机性能不太行,画面很不流畅,可能是中间套了很多层,有性能损失
 
在桌面环境下的firefox则没有这么卡,小主机性能问题应该可以排除……
 
左侧小窗里的QualityCompression Level我感觉调了没啥区别
 
 
 

中文不能直接输入

 
是的,firefox里只能输入英文,中文不能直接输入,因为没有中文输入法
 
如果要输入中文,要先在左侧的剪贴板输入了,然后再在firefox里粘贴,逻辑需要适应
 
notion image
 
 
 

默认没有声音输出

 
如果要声音输出需要挂载外放设备到容器中,但是我不知道怎么在docker-compose.yml里添加参数,作者只介绍了docker run的方式
 
notion image
 
我尝试在docker-compose.yml中挂载设备,但是可能是权限问题,容器那边的/dev/snd是红色的
 
 
 

优化

 
容器下载的中文字体默认是文泉驿,但是我感觉在浏览器上渲染特别不清晰
 
手动换成其他字体
 
查看容器ID,e3a06376fb85
 
下载思源黑体,复制到容器内,重启容器
 
 
进入firefox,切换思源黑体,重新进入firefox,字体应该变成思源了,如果没变,你可能要重新创建容器
 
notion image
 
 
好一点了?
 
notion image
 
 
 
 
 
 
国产盗版STM32的智障问题使用Immich搭建云端相册
Loading...