chore(release): bump default image baseline to v0.1.5

dev
mula.liu 2026-03-23 21:36:41 +08:00
parent da018d515d
commit 914436ac3b
11 changed files with 13 additions and 13 deletions

View File

@ -272,8 +272,8 @@ def _ensure_botinstance_columns() -> None:
"mysql": "LONGTEXT",
},
"image_tag": {
"postgresql": "TEXT DEFAULT 'nanobot-base:v0.1.4'",
"mysql": "VARCHAR(255) DEFAULT 'nanobot-base:v0.1.4'",
"postgresql": "TEXT DEFAULT 'nanobot-base:v0.1.5'",
"mysql": "VARCHAR(255) DEFAULT 'nanobot-base:v0.1.5'",
},
"access_password": {
"postgresql": "TEXT DEFAULT ''",

View File

@ -11,7 +11,7 @@ import docker
class BotDockerManager:
def __init__(self, host_data_root: str, base_image: str = "nanobot-base:v0.1.4"):
def __init__(self, host_data_root: str, base_image: str = "nanobot-base:v0.1.5"):
try:
self.client = docker.from_env(timeout=6)
self.client.version()

View File

@ -13,7 +13,7 @@ class BotInstance(SQLModel, table=True):
docker_status: str = Field(default="STOPPED", index=True)
current_state: Optional[str] = Field(default="IDLE")
last_action: Optional[str] = Field(default=None)
image_tag: str = Field(default="nanobot-base:v0.1.4") # 记录该机器人使用的镜像版本
image_tag: str = Field(default="nanobot-base:v0.1.5") # 记录该机器人使用的镜像版本
node_id: str = Field(default="local", index=True)
transport_kind: str = Field(default="direct", index=True)
runtime_kind: str = Field(default="docker", index=True)
@ -36,7 +36,7 @@ class BotMessage(SQLModel, table=True):
class NanobotImage(SQLModel, table=True):
__tablename__ = "bot_image"
tag: str = Field(primary_key=True) # e.g., nanobot-base:v0.1.4
tag: str = Field(primary_key=True) # e.g., nanobot-base:v0.1.5
image_id: Optional[str] = Field(default=None) # Docker 内部的 Image ID
version: str # e.g., 0.1.4
status: str = Field(default="READY") # READY, BUILDING, ERROR

View File

@ -21,7 +21,7 @@ EDGE_RELOAD = str(os.getenv("EDGE_RELOAD", "true")).strip().lower() in {"1", "tr
EDGE_AUTH_TOKEN = str(os.getenv("EDGE_AUTH_TOKEN", "") or "").strip()
EDGE_NODE_ID = str(os.getenv("EDGE_NODE_ID", "local") or "local").strip().lower() or "local"
EDGE_NODE_NAME = str(os.getenv("EDGE_NODE_NAME", "Local Node") or "Local Node").strip() or "Local Node"
EDGE_BASE_IMAGE = str(os.getenv("EDGE_BASE_IMAGE", "nanobot-base:v0.1.4") or "nanobot-base:v0.1.4").strip()
EDGE_BASE_IMAGE = str(os.getenv("EDGE_BASE_IMAGE", "nanobot-base:v0.1.5") or "nanobot-base:v0.1.5").strip()
EDGE_LOG_LEVEL = str(os.getenv("EDGE_LOG_LEVEL", "warning") or "warning").strip().lower() or "warning"
EDGE_ACCESS_LOG = str(os.getenv("EDGE_ACCESS_LOG", "false")).strip().lower() in {"1", "true", "yes", "on"}

View File

@ -16,7 +16,7 @@ from app.runtime.base import EdgeRuntimeBackend
class EdgeDockerManager(EdgeRuntimeBackend):
runtime_kind = "docker"
def __init__(self, host_data_root: str, base_image: str = "nanobot-base:v0.1.4") -> None:
def __init__(self, host_data_root: str, base_image: str = "nanobot-base:v0.1.5") -> None:
try:
self.client = docker.from_env(timeout=6)
self.client.version()

View File

@ -16,7 +16,7 @@ export const imageFactoryEn = {
noRegistered: 'No registered image in DB.',
dockerTitle: 'Docker Local Images',
dockerDesc: 'System no longer scans engines. Register from docker images only.',
dockerTip: 'Build manually then register: docker build -f Dashboard.Dockerfile.manual -t nanobot-base:v0.1.4 .',
dockerTip: 'Build manually then register: docker build -f Dashboard.Dockerfile.manual -t nanobot-base:v0.1.5 .',
update: 'Update',
register: 'Register',
noDocker: 'No local nanobot-base:* image found.',

View File

@ -16,7 +16,7 @@ export const imageFactoryZhCn = {
noRegistered: '数据库暂无登记镜像。',
dockerTitle: '可登记镜像Docker 本地)',
dockerDesc: '系统不再扫描 engines仅从 docker images 获取并手工登记。',
dockerTip: '建议手工构建后再登记: docker build -f Dashboard.Dockerfile.manual -t nanobot-base:v0.1.4 .',
dockerTip: '建议手工构建后再登记: docker build -f Dashboard.Dockerfile.manual -t nanobot-base:v0.1.5 .',
update: '更新登记',
register: '加入数据库',
noDocker: '本地没有 nanobot-base:* 镜像,请先手工构建。',

View File

@ -43,7 +43,7 @@ export const managementEn = {
noEngine: 'No source detected (please git clone into engines/)',
buildHint: 'Backend scans this directory and runs `pip install .` for image build',
defineVersion: '2. Define version tag',
versionPlaceholder: 'e.g. 0.1.4-custom',
versionPlaceholder: 'e.g. 0.1.5-custom',
startBuild: 'Start Build',
readySection: 'Ready Image Versions',
source: 'Source',

View File

@ -43,7 +43,7 @@ export const managementZhCn = {
noEngine: '未检测到源码 (请先 git clone 到 engines/)',
buildHint: '后端将扫描该目录并执行 `pip install .` 构建镜像',
defineVersion: '2. 定义版本号 (Version Tag)',
versionPlaceholder: '例如: 0.1.4-custom',
versionPlaceholder: '例如: 0.1.5-custom',
startBuild: '开始构建镜像',
readySection: '已就绪的镜像版本',
source: '来源',

View File

@ -141,7 +141,7 @@ export function ManagementModule() {
<div className="flex items-center gap-2 text-slate-500 mb-2">
<Layers size={14} /> <span className="text-[10px] font-bold uppercase tracking-widest">{t.kernel}</span>
</div>
<p className="text-sm font-mono text-blue-400 truncate">{selectedBot.image_tag || 'nanobot-base:v0.1.4'}</p>
<p className="text-sm font-mono text-blue-400 truncate">{selectedBot.image_tag || 'nanobot-base:v0.1.5'}</p>
</div>
<div className="bg-black/20 p-4 rounded-xl border border-white/5">
<div className="flex items-center gap-2 text-slate-500 mb-2">

View File

@ -36,7 +36,7 @@ export function CreateBotModal({ isOpen, onClose, onSuccess }: CreateBotModalPro
llm_model: 'gpt-4o',
api_key: '',
system_prompt: t.systemPrompt,
image_tag: 'nanobot-base:v0.1.4',
image_tag: 'nanobot-base:v0.1.5',
});
const [availableImages, setAvailableImages] = useState<NanobotImage[]>([]);