Sign inSign up

lastnever/inkos

By lastnever

•Updated 3 months ago

Image
0

3.1K

lastnever/inkos repository overview

⁠InkOS Docker

中文⁠ · English⁠

InkOS⁠ 的开箱即用 Docker 镜像 —— 运行 InkOS Studio(网页工作台),并在每次重启时自动更新到最新版本。

本仓库:https://github.com/LastNever/inkos-docker⁠ · 上游项目:https://github.com/Narcooo/inkos⁠ · 镜像:https://hub.docker.com/r/lastnever/inkos⁠


⁠中文

InkOS 是一个本地 AI 故事创作智能体(长篇小说、短篇、剧本、互动开放世界)。本仓库提供其 Docker 镜像,让你无需安装 Node.js / 配置环境,一条命令即可跑起来。

  • 来源仓库(上游): Narcooo/inkos⁠
  • 镜像: lastnever/inkos(支持 linux/amd64 与 linux/arm64)
⁠方式一:docker run(最快)
docker run -d --name inkos \
  -p 4567:4567 \
  -v "$(pwd)/data:/data" \
  -e INKOS_LLM_PROVIDER=openai \
  -e INKOS_LLM_BASE_URL=https://api.openai.com/v1 \
  -e INKOS_LLM_API_KEY=sk-你的key \
  -e INKOS_LLM_MODEL=gpt-4o \
  --restart unless-stopped \
  lastnever/inkos:latest

启动后浏览器打开 http://localhost:4567⁠ 即可使用。(LLM 服务商和模型也可以进入 Studio 界面后再配置。)

⁠方式二:docker compose(推荐)
# 下载本仓库的 docker-compose.yml 和 .env.example
cp .env.example .env     # 编辑 .env 填入你的 API Key 等
docker compose up -d

同样访问 **http://localhost:4567**。⁠

⁠数据持久化

容器内所有作品、创作数据和 Studio 配置都写在 /data。上面的命令把它映射到宿主机当前目录下的 ./data 文件夹(使用目录映射而非命名卷,兼容大部分 NAS)。你可以把 ./data 改成任意宿主机路径,例如 -v /volume1/inkos:/data。

⁠配置 LLM(重要)

Studio 的 LLM 配置在网页界面里设置,并保存在挂载目录 /data(./data)中,这是运行时唯一生效的来源。 启动后打开 Studio → 服务配置,填入服务商 / API Key / 模型即可,设置会持久化,重启容器、甚至自动更新后都保留。

环境变量(-e / compose / .env)不会被 Studio 在运行时直接使用,它们只是「种子」:容器首次启动会把 INKOS_LLM_* 写入 /data/.env,你可以在 Studio 服务配置页点 「从环境变量导入」 一键导入。导入后或你在界面里改动后,始终以界面 / /data 里的配置为准,所以两者不会冲突。

一句话:想省事就直接在网页里配;用环境变量预填的话,记得在服务配置页点一次「从环境变量导入」。

⁠配置项(环境变量)
变量默认值说明
INKOS_STUDIO_PORT4567Studio 监听端口(容器内,运行时生效)
INKOS_VERSIONlatest锁定某个版本(如 1.5.0)即可关闭自动更新(运行时生效)
INKOS_LLM_PROVIDERopenaiopenai / anthropic / custom(种子,需在 UI 导入)
INKOS_LLM_BASE_URLhttps://api.openai.com/v1OpenAI 兼容接口地址(种子)
INKOS_LLM_API_KEY—API Key(种子)
INKOS_LLM_MODELgpt-4o模型名称(种子)
⁠自动更新

容器每次(重)启动时会自动检查并升级到 InkOS 最新发布版本,再启动 Studio。想升级时只需重启容器:

docker restart inkos

如需固定版本、关闭自动更新,把 INKOS_VERSION 设为具体版本号(如 1.5.0)即可。


⁠English

InkOS is a local AI story-creation agent (long-form novels, short fiction, scripts, interactive open worlds). This repo ships a ready-to-run Docker image — no Node.js setup required.

⁠Option A — docker run
docker run -d --name inkos \
  -p 4567:4567 \
  -v "$(pwd)/data:/data" \
  -e INKOS_LLM_PROVIDER=openai \
  -e INKOS_LLM_BASE_URL=https://api.openai.com/v1 \
  -e INKOS_LLM_API_KEY=sk-your-key \
  -e INKOS_LLM_MODEL=gpt-4o \
  --restart unless-stopped \
  lastnever/inkos:latest

Open http://localhost:4567⁠.

cp .env.example .env     # fill in your API key etc.
docker compose up -d
⁠Data persistence

Everything is written to /data. The commands above bind-mount it to a host ./data folder (a plain directory mount, not a named volume, for NAS compatibility). Point it anywhere, e.g. -v /volume1/inkos:/data.

⁠Configuration (important)

Studio's LLM settings are configured in the web UI and stored in the mounted /data (./data) — that is the only source used at runtime. After launch, open Studio → Services, enter your provider / API key / model. Settings persist across restarts and even package auto-updates.

Environment variables (-e / compose / .env) are not used by Studio at runtime; they are only a seed: on first start INKOS_LLM_* are written to /data/.env, which you can one-click import via Studio → Services → "Import from environment". Whatever you save in the UI always wins, so there is no conflict.

VariableDefaultNotes
INKOS_STUDIO_PORT4567Studio port (applies at runtime)
INKOS_VERSIONlatestPin a version (e.g. 1.5.0) to disable auto-update (applies at runtime)
INKOS_LLM_PROVIDER / _BASE_URL / _API_KEY / _MODEL—Seed only; import once in the UI
⁠Auto-update

The container checks for and upgrades to the newest InkOS release on every (re)start. To update, just docker restart inkos. Pin INKOS_VERSION (e.g. 1.5.0) to disable auto-update.


InkOS 采用 AGPL-3.0 许可证,本镜像仓库遵循相同许可证。

Tag summary

Content type

Image

Digest

sha256:3069e409a…

Size

160 MB

Last updated

3 months ago

docker pull lastnever/inkos