Skip to content

安装部署

OmniBox 仅通过 Docker 提供安装与部署,镜像托管在 Docker Hub。

前置要求

选择镜像版本

可从 Docker Hub 拉取两个版本,按需选择:

镜像标签说明
完整版lampon/omnibox:latest含 Node + Python + Playwright + Chromium headless + ffmpeg,支持 JS / Python 爬虫、视频嗅探(OmniBox.sniffVideo)、ffprobe 时长探测。体积较大,功能完整。
精简版lampon/omnibox:lite仅 Node 运行时,仅支持 JS 爬虫,无 Python、无 Chromium、无 ffmpeg,嗅探与时长探测不可用。体积更小,适合只使用 JS 爬虫源的场景。
  • 需要 Python 爬虫视频嗅探:请使用 完整版 lampon/omnibox:latest
  • 仅使用 JS 爬虫、希望占用更小:可使用 精简版 lampon/omnibox:lite

快速开始(推荐:使用预构建镜像)

完整版

bash
docker run -d \
  --name omnibox \
  --restart unless-stopped \
  -p 7023:7023 \
  -v omnibox-data:/app/data \
  lampon/omnibox:latest

精简版

bash
docker run -d \
  --name omnibox \
  --restart unless-stopped \
  -p 7023:7023 \
  -v omnibox-data:/app/data \
  lampon/omnibox:lite

默认端口映射 7023:7023,访问 http://localhost:7023

环境变量与数据库选择

通过环境变量可以自定义服务端口、数据库等。数据库支持三种类型,默认使用 SQLite,无需额外安装;若需要 MySQL 或 PostgreSQL,在启动容器时传入对应环境变量即可。

数据库类型

类型说明默认
SQLite单文件数据库,零配置,适合个人或小规模使用✅ 默认
MySQL需自建 MySQL 服务,适合多实例或已有 MySQL 的环境
PostgreSQL需自建 PostgreSQL 服务,适合多实例或已有 PG 的环境

未配置时使用 SQLite,数据文件存放在挂载的 /app/data 目录下(如 ./data/data.sqlite)。

常用环境变量

变量名说明示例
SERVER_PORT服务监听端口(需与 -p 映射一致)7023
DATABASE_TYPE数据库类型:sqlitemysqlpostgressqlite
DATABASE_URLSQLite 时使用,数据库文件路径./data/data.sqlite
DATABASE_HOSTMySQL/PostgreSQL 时使用,数据库主机localhost 或容器名
DATABASE_PORTMySQL/PostgreSQL 端口(MySQL 常用 3306,PG 常用 5432)3306 / 5432
DATABASE_USERNAME数据库用户名root
DATABASE_PASSWORD数据库密码
DATABASE_DATABASE数据库名(MySQL/PostgreSQL)omnibox

使用 SQLite(默认)

不传数据库相关环境变量时即为 SQLite,只需保证数据目录挂载即可:

bash
docker run -d --name omnibox -p 7023:7023 -v omnibox-data:/app/data lampon/omnibox:latest

使用 MySQL

bash
docker run -d \
  --name omnibox \
  -p 7023:7023 \
  -v omnibox-data:/app/data \
  -e DATABASE_TYPE=mysql \
  -e DATABASE_HOST=你的MySQL地址 \
  -e DATABASE_PORT=3306 \
  -e DATABASE_USERNAME=root \
  -e DATABASE_PASSWORD=你的密码 \
  -e DATABASE_DATABASE=omnibox \
  lampon/omnibox:latest

需先在 MySQL 中创建好数据库(如 CREATE DATABASE omnibox;),OmniBox 启动时会自动建表。

使用 PostgreSQL

bash
docker run -d \
  --name omnibox \
  -p 7023:7023 \
  -v omnibox-data:/app/data \
  -e DATABASE_TYPE=postgres \
  -e DATABASE_HOST=你的PostgreSQL地址 \
  -e DATABASE_PORT=5432 \
  -e DATABASE_USERNAME=postgres \
  -e DATABASE_PASSWORD=你的密码 \
  -e DATABASE_DATABASE=omnibox \
  lampon/omnibox:latest

需先在 PostgreSQL 中创建好数据库,OmniBox 启动时会自动建表。

更多环境变量(日志、弹幕、TMDB 等)可参考 Docker 部署 - 环境变量

数据持久化

数据写入卷或主机目录,可按需修改挂载:

  • 使用卷(示例):-v omnibox-data:/app/data
  • 使用主机目录:-v /path/on/host:/app/data

详见 Docker 部署

下一步