logo
0
0
Login

Chrome Docker Container

一个基于 Ubuntu 22.04 的 Docker 容器,运行 Google Chrome 浏览器并通过 VNC 提供远程访问。

功能特性

  • 🚀 基于 Ubuntu 22.04 的轻量级容器
  • 🌐 预装 Google Chrome 浏览器
  • 🖥️ 通过 VNC 远程访问 Chrome 界面
  • 📋 支持剪贴板同步功能
  • 🔧 可自定义屏幕分辨率和 VNC 配置
  • 🔄 支持容器自动重启

快速开始

使用 Docker Compose(推荐)

  1. 克隆或下载项目文件
  2. 在项目目录中运行:
docker-compose up -d
  1. 使用 VNC 客户端连接到 localhost:5900

使用 Docker 命令

docker run -d \ --name chrome-docker \ -p 5900:5900 \ -v ./data:/data \ -e VNC_SCREEN_SIZE=1920x1080 \ btpanel/chrome:latest

环境变量

变量名描述默认值
VNC_SCREEN_SIZE屏幕分辨率1024x768
VNC_PASSWORDVNC 连接密码无密码
VNC_PORTVNC 服务端口5900
VNC_BIND_IPVNC 绑定 IP0.0.0.0
CHROME_OPTS_OVERRIDEChrome 启动参数默认参数

配置说明

屏幕分辨率

通过设置 VNC_SCREEN_SIZE 环境变量来自定义屏幕分辨率,支持以下格式:

  • 1024x768 (默认)
  • 1280x720
  • 1920x1080
  • 2560x1440

VNC 密码保护

如需设置 VNC 密码,在 docker-compose.yml 中取消注释并设置:

environment: VNC_PASSWORD: your_password

Chrome 数据持久化

Chrome 的用户数据(书签、历史记录、Cookie 等)会保存在挂载的 /data 目录中,确保数据在容器重启后仍然保留。

使用说明

VNC 连接

  1. 使用任意 VNC 客户端连接到服务器
  2. 默认地址:localhost:5900
  3. 如设置了密码,输入配置的 VNC 密码

剪贴板同步

容器支持主机与 Chrome 之间的剪贴板同步:

  • 修改主机上的 data/clipboard.txt 文件内容
  • 内容会自动同步到 Chrome 的剪贴板

文件访问

通过挂载的 /data 目录可以在主机和容器之间共享文件。

项目结构

chrome/ ├── Dockerfile # Docker 镜像构建文件 ├── docker-compose.yml # Docker Compose 配置 ├── configs/ │ ├── entrypoint.sh # 容器启动脚本 │ └── etc/supervisor/ # Supervisor 进程管理配置 │ └── conf.d/ │ └── supervisord.conf # 服务进程配置 ├── data/ # Chrome 数据目录(运行时创建) ├── .dockerignore # Docker 构建忽略文件 └── .gitignore # Git 忽略文件

进程管理

容器使用 Supervisor 管理以下进程:

  • Xvfb: 虚拟 X11 显示服务器
  • Chrome: Google Chrome 浏览器
  • x11vnc: VNC 服务器
  • watch-clipboard: 剪贴板同步服务

日志查看

可以通过以下命令查看各个服务的日志:

# 查看 Supervisor 日志 docker logs chrome-docker # 进入容器查看详细日志 docker exec -it chrome-docker bash cat /var/log/supervisor/*.log

About

No description, topics, or website provided.
chromesame-named
Language
Dockerfile52.9%
Shell47.1%