1.jlesage/firefox介绍

Github原地址:https://github.com/jlesage/docker-firefox

Docker Compose File:https://github.com/jlesage/docker-firefox#docker-compose-file

作用

1.一定降低中毒风险,浏览器容器与宿主机相对隔离,可随时停止并删除容器,但仍有风险。
以下咨询ChatGPT回复

当容器(container)中的应用程序或服务受到攻击,可能会影响宿主机(host machine)。攻击者可以利用漏洞或弱点来入侵容器,并从容器访问宿主机并执行恶意代码。这种攻击通常被称为“容器逃逸”(container escape)。
一旦攻击者成功逃出容器并获得对宿主机的访问权限,他们可以继续在宿主机上运行和扩散恶意软件,甚至危及整个基础架构。因此,保护容器的安全非常重要,以防止容器逃逸和其他类似的攻击。

2.其他设备上需要用到浏览器做配置的情况

2.部署环境

  • Ubuntu 20.04 64 Bit
  • Docker/Docker-compose已安装
  • Ngnix Proxy Manager已安装

3.部署过程

创建目录

sudo -i
mkdir -p /root/data/docker_data/firefox
cd /root/data/docker_data/firefox
nano docker-compose.yml

docker-compose.yml配置文件

version: '3'
services:
  firefox:
    image: jlesage/firefox
    ports:
      - "5800:5800"
    volumes:
      - "/docker/appdata/firefox:/config:rw"

ports左边端口号可自定义修改为未占用的端口,右边容器端口号不要修改,如"3001:9000"。

检查端口是否被占用

lsof -i:5800

打开防火墙端口

打开防火墙的端口 5800,方法参考自己主机防火墙管理方式,以ufw工具举例:

sudo ufw allow 5800/tcp

运行

docker-compose up -d 

4.安装字体及使用

现在虽然可以使用Firefox了,但是中文还是乱码,需要给容器内安装字体,才能正常浏览中文。
首先,运行docker ps查看jlesage/firefox的容器ID

docker ps 

licvp9ih.png
然后,用命令将字体文件复制到容器中
例如:

docker cp /root/data/docker_data/FangZheng.ttf b3d7e15ffe0e:/usr/share/fonts

这样就可以正常浏览中文了,但依然无法输入中文,还是需要通过界面的剪切板工具先输入后,再到浏览器中进行拷贝。
licvwmtb.png

5.更新

cd /root/data/docker_data/firefox
docker-compose pull
docker-compose up -d

6.卸载

cd /root/data/docker_data/firefox
docker-compose down
cd ~
rm -rf /root/data/docker_data/firefox