服务器部署网页浏览器,嵌套浏览器

138次阅读
没有评论

共计 3820 个字符,预计需要花费 10 分钟才能阅读完成。

服务器部署网页浏览器,嵌套浏览器

  • Docker部署火狐浏览器,vnc连接,linux服务器部署

安装docker (中国国内)


警告:本教程在其他环境下可以会安装失败,请自行理解-解决

更新系统包(系统):

sudo apt-get update
sudo apt-get upgrade -y

安装必要的依赖

sudo apt-get install -y ca-certificates curl apt-transport-https gnupg-agent software-properties-common

添加 Docker 的官方 GPG 密钥

1.Debian

curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

2.Ubuntu

curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

配置 APT 使用阿里云镜像源

1.Debian

echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

2.Ubuntu

echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

更新 APT 索引并安装 Docker

sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io

检测docker是否运行

对于使用 systemd 的系统(如大多数现代 Linux 发行版):

  sudo systemctl status docker

如果 Docker 服务正在运行,你会看到类似以下的输出:如果 Docker 服务未运行,你会看到类似以下的输出:

  docker.service - Docker Application Container Engine
       Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
       Active: active (running) since Wed 2024-10-11 14:30:00 CST; 1 day 2 hours ago
  TriggeredBy: ● docker.socket
       Docs: https://docs.docker.com
     Main PID: 1234 (dockerd)
        Tasks: 7
       Memory: 123.4M
       CGroup: /system.slice/docker.service
               └─1234 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

如果 Docker 服务未运行,你会看到类似以下的输出:

  docker.service - Docker Application Container Engine
       Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
       Active: inactive (dead)

对于不使用 systemd 的系统(如较旧的 Debian/Ubuntu):

  sudo service docker status

安装DPanel – Docker面板( 可选)

创建面板目录

  # 创建安装目录
  mkdir -p /volume1/docker/dpanel/data

安装 DPanel Lite 版 – 官方入口


  # 运行 DPanel 容器
  docker run -d --name dpanel --restart=always /
    -p 8807:8080 /
    -e APP_NAME=dpanel /
    -v /var/run/docker.sock:/var/run/docker.sock /
    -v /home/dpanel:/dpanel /
    registry.cn-hangzhou.aliyuncs.com/dpanel/dpanel:lite

验证 DPanel 是否运行

  docker ps

登录DPanel

  • 访问 http://<你的服务器IP>:8807,你应该能看到 DPanel 的登录页面。

安装火狐浏览器

一个目录用于存储 Firefox 的配置文件和数据:

  mkdir -p /data/firefox/config

拉取 Firefox 镜像

  • 由于网络原因,建议使用国内镜像源拉取 jlesage/firefox 镜像。可以使用以下命令:
    docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/jlesage/firefox:v24.05.1

安装 Firefox 容器

  docker run -d --name firefox /
    -e TZ=Asia/Shanghai /
    -e DISPLAY_WIDTH=1920 /
    -e DISPLAY_HEIGHT=1080 /
    -e KEEP_APP_RUNNING=1 /
    -e ENABLE_CJK_FONT=1 /
    -e VNC_PASSWORD=admin /
    -p 5800:5800 /
    -p 5900:5900 /
    -v /data/firefox/config:/config:rw /
    --shm-size 2g /
    swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/jlesage/firefox:v24.05.1
  • 访问火狐浏览器浏览器
    • 启动完成后,通过浏览器访问 http://<你的IP地址>:5800输入设置的 VNC 密码(默认为 admin),即可进入 Firefox 浏览器界面。
  • 配置中文支持
    • 为了支持中文显示,可以在启动命令中添加以下环境变量:
    -e LANG=zh_CN.UTF-8
    -e PACKAGES_MIRROR=https://mirrors.ustc.edu.cn/alpine
  • 浏览器下载目录

    默认(按照步骤下来):在/data/firefox/downloads

    自定义:在参数-v /data/firefox/config:/config:rw/data/firefox/config系统目录下


浏览器网络设置 – 可选(不影响浏览器使用)

在启动火狐浏览器容器时,使用 --network 参数将其连接到自定义网络:

docker run -d --name firefox /
  --network internal-network /
  -e TZ=Asia/Shanghai /
  -e DISPLAY_WIDTH=1920 /
  -e DISPLAY_HEIGHT=1080 /
  -e KEEP_APP_RUNNING=1 /
  -e ENABLE_CJK_FONT=1 /
  -e VNC_PASSWORD=admin /
  -p 5800:5800 /
  -p 5900:5900 /
  -v /data/firefox/config:/config:rw /
  --shm-size 2g /
  jlesage/firefox

这样,火狐浏览器容器将使用内部网络。

使用 --net=host 模式(不推荐用于生产环境)

如果需要让火狐浏览器直接使用宿主机的网络栈,可以使用 --net=host 模式启动容器:

docker run -d --name firefox /
  --net=host /
  -e TZ=Asia/Shanghai /
  -e DISPLAY_WIDTH=1920 /
  -e DISPLAY_HEIGHT=1080 /
  -e KEEP_APP_RUNNING=1 /
  -e ENABLE_CJK_FONT=1 /
  -e VNC_PASSWORD=admin /
  -v /data/firefox/config:/config:rw /
  --shm-size 2g /
  jlesage/firefox

这种方式会让容器直接共享宿主机的网络,但可能会带来安全风险,因此不推荐用于生产环境


相关命令

  • 重启 / 关闭 / 删除
    1. 关闭容器docker stop firefox
    2. 重启容器docker restart firefox
    3. 删除容器docker rm firefox
    4. 删除镜像docker rmi jlesage/firefox
    5. 清理所有未运行的容器docker container prune
    6. 清理未使用的资源docker system prune
正文完
 1
评论(没有评论)