Docker 主机
任何能运行 Docker 镜像的服务器。Ollama 需要一次对外联网,以便 ollama pull 你的模型;
此后一切皆为本地。
Secretia 是一份发行版:它运行官方的 Ollama 与 Open WebUI 镜像,并添加一个小巧的 品牌层。选择适合你主机的路径——一份单文件的 Compose,或三个独立的服务(在 EasyPanel 上 最为友好的方式)。
Docker 主机
任何能运行 Docker 镜像的服务器。Ollama 需要一次对外联网,以便 ollama pull 你的模型;
此后一切皆为本地。
足够的内存
一个 7–8B 模型大约需要 4–5 GB。仅 CPU 也能运行;有 GPU 会快得多。
一个会话密钥
给 Open WebUI 准备一串长长的随机字符串(openssl rand -hex 32)。若要 SSO,则准备
Lockatus 客户端详情(可选)。
EasyPanel 更倾向于独立的服务而非 Compose。创建一个项目和三个服务:
ollama — App → Docker Image ollama/ollama:latest。在
/root/.ollama 挂载一个卷。不分配域名(内部)。open-webui — App → Docker Image ghcr.io/open-webui/open-webui:main。挂载
/app/backend/data。设置环境变量(见下文)。不分配域名(内部)。secretia — App → GitHub diegoparras/secretia,Build = Dockerfile。设置
OPEN_WEBUI_UPSTREAM=open-webui:8080。将你的公网域名 → 端口 8080。在同一个项目内,各服务通过名称相互访问(http://ollama:11434、
open-webui:8080)。完整的检查清单见仓库的 DEPLOY.md。
git clone https://github.com/diegoparras/secretia.git && cd secretiacp .env.example .env # set WEBUI_URL, WEBUI_SECRET_KEY and the OAUTH_* varsdocker compose up -d该 compose 会一起启动 Ollama、Open WebUI 和品牌 nginx;只有品牌服务对外发布
(端口 8080)。
想要最简单的路径?只运行 ollama + open-webui,并将你的域名直接指向
open-webui(端口 8080)。你保留「Secretia」之名与 Lockatus 登录,但会失去品红
强调色——那正是品牌服务所添加的。
| Variable | Example | 说明 |
|---|---|---|
OLLAMA_BASE_URL | http://ollama:11434 | 模型引擎所在之处(内部主机名)。 |
WEBUI_NAME | Secretia | 界面中显示的应用名称。 |
WEBUI_URL | https://your-domain | 公网 URL——用于构建 OIDC 重定向。 |
WEBUI_SECRET_KEY | (random) | 会话/加密密钥。openssl rand -hex 32。请妥善保密。 |
ENABLE_SIGNUP | false | 关闭本地注册——账户均通过 Lockatus 接入。 |
ENABLE_OAUTH_SIGNUP | true | 首次 Lockatus 登录时自动创建用户。 |
OAUTH_CLIENT_ID | secretia | 在 Lockatus 中注册的应用 slug。 |
OAUTH_CLIENT_SECRET | (secret) | 在 Lockatus 中注册的密钥。 |
OPENID_PROVIDER_URL | …/.well-known/openid-configuration | Lockatus 发现(discovery)URL。 |
OPENID_REDIRECT_URI | https://your-domain/oauth/oidc/callback | 必须与在 Lockatus 中注册的一致。 |
品牌服务只需一个变量:OPEN_WEBUI_UPSTREAM(默认 open-webui:8080)。
ollama 服务的终端中,拉取一个模型:ollama pull llama3.1:8b # or qwen2.5:7b, or llava:7b for images该模型会自行出现在 Secretia 的选择器中。