Files
easyai/system-update/releases/online-update-progress-20261002/acceptance/managed-browser-log.json
T

12078 lines
413 KiB
JSON

[
{
"time": "2026-10-02T11:15:34.439Z",
"path": "/api/app/update-jobs",
"status": 200,
"value": {
"status": "success",
"data": [],
"message": "success"
}
},
{
"time": "2026-10-02T11:22:54.730Z",
"path": "/api/app/update-jobs",
"status": 500,
"value": {
"statusCode": 500,
"timestamp": "2026-10-02T11:22:54.644Z",
"path": "/app/update-jobs?active=true&limit=1",
"message": "getaddrinfo EAI_AGAIN easyai-updater",
"traceId": "yGyuK8eBkaXeNsMy",
"appVersion": "3.22.0.20261002.1",
"diagnosticCode": "RequestError"
}
},
{
"time": "2026-10-02T11:23:20.074Z",
"path": "/api/app/update-capabilities",
"status": 200,
"value": {
"status": "success",
"data": {
"mode": "legacy_watchtower",
"jobApi": false,
"executorReachable": false
},
"message": "success"
}
},
{
"time": "2026-10-02T11:23:26.733Z",
"path": "/api/app/update",
"status": 502
},
{
"time": "2026-10-02T11:23:28.856Z",
"path": "/api/health/update-ready",
"status": 502
},
{
"time": "2026-10-02T11:23:30.935Z",
"path": "/api/health/update-ready",
"status": 502
},
{
"time": "2026-10-02T11:23:33.033Z",
"path": "/api/health/update-ready",
"status": 502
},
{
"time": "2026-10-02T11:23:35.153Z",
"path": "/api/health/update-ready",
"status": 502
},
{
"time": "2026-10-02T11:23:37.254Z",
"path": "/api/health/update-ready",
"status": 502
},
{
"time": "2026-10-02T11:23:39.392Z",
"path": "/api/health/update-ready",
"status": 502
},
{
"time": "2026-10-02T11:23:41.490Z",
"path": "/api/health/update-ready",
"status": 502
},
{
"time": "2026-10-02T11:23:43.622Z",
"path": "/api/health/update-ready",
"status": 502
},
{
"time": "2026-10-02T11:23:45.733Z",
"path": "/api/health/update-ready",
"status": 502
},
{
"time": "2026-10-02T11:23:47.824Z",
"path": "/api/health/update-ready",
"status": 502
},
{
"time": "2026-10-02T11:23:49.905Z",
"path": "/api/health/update-ready",
"status": 502
},
{
"time": "2026-10-02T11:23:51.995Z",
"path": "/api/health/update-ready",
"status": 502
},
{
"time": "2026-10-02T11:23:54.094Z",
"path": "/api/health/update-ready",
"status": 502
},
{
"time": "2026-10-02T11:23:56.194Z",
"path": "/api/health/update-ready",
"status": 502
},
{
"time": "2026-10-02T11:23:58.414Z",
"path": "/api/health/update-ready",
"status": 502
},
{
"time": "2026-10-02T11:24:20.993Z",
"path": "/api/health/update-ready",
"status": 200,
"value": {
"status": "ok",
"service": "easyai-server-main",
"version": "3.22.0.20261002.2",
"buildId": "3.22.0.20261002.2",
"timestamp": "2026-10-02T11:24:20.920Z",
"uptime": 42.086032874,
"dependencies": {
"mongo": "ok",
"redis": "ok",
"rabbitmq": "ok"
}
}
},
{
"time": "2026-10-02T11:25:52.477Z",
"path": "/api/app/update-jobs",
"status": 200,
"value": {
"status": "success",
"data": [],
"message": "success"
}
},
{
"time": "2026-10-02T11:25:58.757Z",
"path": "/api/app/update-capabilities",
"status": 200,
"value": {
"status": "success",
"data": {
"mode": "legacy_watchtower",
"executor": "watchtower",
"jobApi": true,
"eventApi": true,
"realtime": true,
"executorReachable": true
},
"message": "success"
}
},
{
"time": "2026-10-02T11:25:58.910Z",
"path": "/api/app/update-jobs",
"status": 201,
"value": {
"status": "success",
"data": {
"id": "wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a",
"idempotencyKey": "9bb11e4f-924a-4fd5-a501-86150a35e147",
"action": "update",
"source": "manual",
"executor": "watchtower",
"status": "queued",
"phase": "queued",
"message": "更新任务已保存,正在提交更新请求",
"previousVersion": "3.22.0.20261002.1",
"productVersion": "3.22.0.20261002.2",
"createdAt": "2026-10-02T11:25:58.856Z",
"updatedAt": "2026-10-02T11:25:58.856Z",
"startedAt": "2026-10-02T11:25:58.856Z",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "running",
"startedAt": "2026-10-02T11:25:58.856Z"
},
{
"id": "applying",
"title": "执行更新",
"status": "pending"
},
{
"id": "verifying",
"title": "等待服务恢复",
"status": "pending"
},
{
"id": "finished",
"title": "确认版本",
"status": "pending"
}
],
"components": []
},
"message": "success"
}
},
{
"time": "2026-10-02T11:25:59.020Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a/events",
"status": 200
},
{
"time": "2026-10-02T11:26:01.059Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a",
"idempotencyKey": "9bb11e4f-924a-4fd5-a501-86150a35e147",
"action": "update",
"source": "manual",
"executor": "watchtower",
"status": "running",
"phase": "applying",
"message": "更新服务已开始执行,正在检查、下载并更新服务",
"previousVersion": "3.22.0.20261002.1",
"productVersion": "3.22.0.20261002.2",
"createdAt": "2026-10-02T11:25:58.856Z",
"updatedAt": "2026-10-02T11:25:58.893Z",
"startedAt": "2026-10-02T11:25:58.856Z",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:25:58.856Z",
"finishedAt": "2026-10-02T11:25:58.893Z"
},
{
"id": "applying",
"title": "执行更新",
"status": "running",
"startedAt": "2026-10-02T11:25:58.893Z"
},
{
"id": "verifying",
"title": "等待服务恢复",
"status": "pending"
},
{
"id": "finished",
"title": "确认版本",
"status": "pending"
}
],
"components": []
},
"message": "success"
}
},
{
"time": "2026-10-02T11:26:01.259Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a/events",
"status": 200
},
{
"time": "2026-10-02T11:26:03.159Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a",
"status": 502
},
{
"time": "2026-10-02T11:26:03.288Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a/events",
"status": 502
},
{
"time": "2026-10-02T11:26:05.239Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a",
"status": 502
},
{
"time": "2026-10-02T11:26:05.338Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a/events",
"status": 502
},
{
"time": "2026-10-02T11:26:07.353Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a",
"status": 502
},
{
"time": "2026-10-02T11:26:07.462Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a/events",
"status": 502
},
{
"time": "2026-10-02T11:26:09.548Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a",
"status": 502
},
{
"time": "2026-10-02T11:26:09.746Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a/events",
"status": 502
},
{
"time": "2026-10-02T11:26:11.619Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a",
"status": 502
},
{
"time": "2026-10-02T11:26:11.842Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a/events",
"status": 502
},
{
"time": "2026-10-02T11:26:13.722Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a",
"status": 502
},
{
"time": "2026-10-02T11:26:13.978Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a/events",
"status": 502
},
{
"time": "2026-10-02T11:26:15.817Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a",
"status": 502
},
{
"time": "2026-10-02T11:26:15.916Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a/events",
"status": 502
},
{
"time": "2026-10-02T11:26:17.930Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a",
"status": 502
},
{
"time": "2026-10-02T11:26:18.136Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a/events",
"status": 502
},
{
"time": "2026-10-02T11:26:20.053Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a",
"status": 502
},
{
"time": "2026-10-02T11:26:20.233Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a/events",
"status": 502
},
{
"time": "2026-10-02T11:26:22.159Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a",
"status": 502
},
{
"time": "2026-10-02T11:26:22.331Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a/events",
"status": 502
},
{
"time": "2026-10-02T11:26:24.287Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a",
"status": 502
},
{
"time": "2026-10-02T11:26:24.428Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a/events",
"status": 502
},
{
"time": "2026-10-02T11:26:26.401Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a",
"status": 502
},
{
"time": "2026-10-02T11:26:26.647Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a/events",
"status": 502
},
{
"time": "2026-10-02T11:26:28.491Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a",
"status": 502
},
{
"time": "2026-10-02T11:26:28.654Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a/events",
"status": 502
},
{
"time": "2026-10-02T11:27:02.209Z",
"path": "/api/app/update-jobs/wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "wt-91612f117537604c18fc41bf214d06a8b0aeaa4956b2c42aad738d657c5f369a",
"idempotencyKey": "9bb11e4f-924a-4fd5-a501-86150a35e147",
"action": "update",
"source": "manual",
"executor": "watchtower",
"status": "succeeded",
"phase": "finished",
"message": "更新完成,目标版本和核心服务均已确认可用",
"previousVersion": "3.22.0.20261002.1",
"productVersion": "3.22.0.20261002.2",
"createdAt": "2026-10-02T11:25:58.856Z",
"updatedAt": "2026-10-02T11:26:41.594Z",
"startedAt": "2026-10-02T11:25:58.856Z",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:25:58.856Z",
"finishedAt": "2026-10-02T11:25:58.893Z"
},
{
"id": "applying",
"title": "执行更新",
"status": "completed",
"startedAt": "2026-10-02T11:25:58.893Z",
"finishedAt": "2026-10-02T11:26:39.560Z"
},
{
"id": "verifying",
"title": "等待服务恢复",
"status": "completed",
"startedAt": "2026-10-02T11:26:39.560Z",
"finishedAt": "2026-10-02T11:26:41.594Z"
},
{
"id": "finished",
"title": "确认版本",
"status": "completed",
"startedAt": "2026-10-02T11:26:41.594Z",
"finishedAt": "2026-10-02T11:26:41.594Z"
}
],
"components": [],
"finishedAt": "2026-10-02T11:26:41.594Z"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:29:17.330Z",
"path": "/api/app/update-jobs",
"status": 200,
"value": {
"status": "success",
"data": [],
"message": "success"
}
},
{
"time": "2026-10-02T11:29:29.815Z",
"path": "/api/app/update-capabilities",
"status": 200,
"value": {
"status": "success",
"data": {
"mode": "managed",
"jobApi": true,
"executorReachable": true,
"updaterVersion": "1.1.0",
"deploymentSchemaVersion": 2,
"executor": "updater",
"eventApi": true
},
"message": "success"
}
},
{
"time": "2026-10-02T11:29:29.927Z",
"path": "/api/app/update-jobs",
"status": 201,
"value": {
"status": "success",
"data": {
"id": "7912cba2-097a-4f18-943c-c90868f51bb8",
"idempotencyKey": "24bc11bb-4118-4498-8e36-62951d4cfafb",
"action": "update",
"source": "manual",
"status": "queued",
"phase": "queued",
"message": "更新任务已创建,正在等待执行",
"createdAt": "2026-10-02T11:29:29.873Z",
"updatedAt": "2026-10-02T11:29:29.873Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "pending"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "pending"
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "running",
"startedAt": "2026-10-02T11:29:29.873Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "pending"
},
{
"id": "pulling",
"title": "下载更新",
"status": "pending"
},
{
"id": "applying",
"title": "更新服务",
"status": "pending"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
]
},
"message": "success"
}
},
{
"time": "2026-10-02T11:29:30.074Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8/events",
"status": 200
},
{
"time": "2026-10-02T11:29:32.017Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8",
"status": 502
},
{
"time": "2026-10-02T11:29:32.156Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8/events",
"status": 502
},
{
"time": "2026-10-02T11:29:34.077Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8",
"status": 502
},
{
"time": "2026-10-02T11:29:34.255Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8/events",
"status": 502
},
{
"time": "2026-10-02T11:29:36.155Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8",
"status": 502
},
{
"time": "2026-10-02T11:29:36.356Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8/events",
"status": 502
},
{
"time": "2026-10-02T11:29:38.248Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8",
"status": 502
},
{
"time": "2026-10-02T11:29:38.417Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8/events",
"status": 502
},
{
"time": "2026-10-02T11:29:40.328Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8",
"status": 502
},
{
"time": "2026-10-02T11:29:40.405Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8/events",
"status": 502
},
{
"time": "2026-10-02T11:29:42.439Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8",
"status": 502
},
{
"time": "2026-10-02T11:29:42.613Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8/events",
"status": 502
},
{
"time": "2026-10-02T11:29:44.528Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8",
"status": 502
},
{
"time": "2026-10-02T11:29:44.594Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8/events",
"status": 502
},
{
"time": "2026-10-02T11:29:46.589Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8",
"status": 502
},
{
"time": "2026-10-02T11:29:46.644Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8/events",
"status": 502
},
{
"time": "2026-10-02T11:29:48.674Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8",
"status": 502
},
{
"time": "2026-10-02T11:29:48.753Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8/events",
"status": 502
},
{
"time": "2026-10-02T11:29:50.800Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8",
"status": 502
},
{
"time": "2026-10-02T11:29:50.995Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8/events",
"status": 502
},
{
"time": "2026-10-02T11:29:52.886Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8",
"status": 502
},
{
"time": "2026-10-02T11:29:53.137Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8/events",
"status": 502
},
{
"time": "2026-10-02T11:29:55.010Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8",
"status": 502
},
{
"time": "2026-10-02T11:29:55.092Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8/events",
"status": 502
},
{
"time": "2026-10-02T11:29:57.116Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8",
"status": 502
},
{
"time": "2026-10-02T11:29:57.324Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8/events",
"status": 502
},
{
"time": "2026-10-02T11:29:59.228Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "7912cba2-097a-4f18-943c-c90868f51bb8",
"idempotencyKey": "24bc11bb-4118-4498-8e36-62951d4cfafb",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新主服务",
"createdAt": "2026-10-02T11:29:29.873Z",
"updatedAt": "2026-10-02T11:29:33.156Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "verifying",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-7912cba2-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
}
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "pending",
"targetImageId": "sha256:28a9f2e85c90238cb1f570c252a548cdfb678835bdb030ab5a9aa35a99e3f9b1"
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.873Z",
"finishedAt": "2026-10-02T11:29:29.875Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.875Z",
"finishedAt": "2026-10-02T11:29:29.883Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.883Z",
"finishedAt": "2026-10-02T11:29:31.485Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:29:31.485Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:29:29.875Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:29:59.630Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8/events",
"status": 200
},
{
"time": "2026-10-02T11:30:01.299Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "7912cba2-097a-4f18-943c-c90868f51bb8",
"idempotencyKey": "24bc11bb-4118-4498-8e36-62951d4cfafb",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新实时服务",
"createdAt": "2026-10-02T11:29:29.873Z",
"updatedAt": "2026-10-02T11:30:00.082Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-7912cba2-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "verifying",
"targetImageId": "sha256:28a9f2e85c90238cb1f570c252a548cdfb678835bdb030ab5a9aa35a99e3f9b1",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-7912cba2-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.873Z",
"finishedAt": "2026-10-02T11:29:29.875Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.875Z",
"finishedAt": "2026-10-02T11:29:29.883Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.883Z",
"finishedAt": "2026-10-02T11:29:31.485Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:29:31.485Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:29:29.875Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:30:01.376Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8/events",
"status": 200
},
{
"time": "2026-10-02T11:30:03.378Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "7912cba2-097a-4f18-943c-c90868f51bb8",
"idempotencyKey": "24bc11bb-4118-4498-8e36-62951d4cfafb",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新实时服务",
"createdAt": "2026-10-02T11:29:29.873Z",
"updatedAt": "2026-10-02T11:30:00.082Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-7912cba2-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "verifying",
"targetImageId": "sha256:28a9f2e85c90238cb1f570c252a548cdfb678835bdb030ab5a9aa35a99e3f9b1",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-7912cba2-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.873Z",
"finishedAt": "2026-10-02T11:29:29.875Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.875Z",
"finishedAt": "2026-10-02T11:29:29.883Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.883Z",
"finishedAt": "2026-10-02T11:29:31.485Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:29:31.485Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:29:29.875Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:30:03.577Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8/events",
"status": 200
},
{
"time": "2026-10-02T11:30:05.468Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "7912cba2-097a-4f18-943c-c90868f51bb8",
"idempotencyKey": "24bc11bb-4118-4498-8e36-62951d4cfafb",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新实时服务",
"createdAt": "2026-10-02T11:29:29.873Z",
"updatedAt": "2026-10-02T11:30:00.082Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-7912cba2-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "verifying",
"targetImageId": "sha256:28a9f2e85c90238cb1f570c252a548cdfb678835bdb030ab5a9aa35a99e3f9b1",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-7912cba2-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.873Z",
"finishedAt": "2026-10-02T11:29:29.875Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.875Z",
"finishedAt": "2026-10-02T11:29:29.883Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.883Z",
"finishedAt": "2026-10-02T11:29:31.485Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:29:31.485Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:29:29.875Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:30:05.546Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8/events",
"status": 200
},
{
"time": "2026-10-02T11:30:07.556Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "7912cba2-097a-4f18-943c-c90868f51bb8",
"idempotencyKey": "24bc11bb-4118-4498-8e36-62951d4cfafb",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新实时服务",
"createdAt": "2026-10-02T11:29:29.873Z",
"updatedAt": "2026-10-02T11:30:00.082Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-7912cba2-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "verifying",
"targetImageId": "sha256:28a9f2e85c90238cb1f570c252a548cdfb678835bdb030ab5a9aa35a99e3f9b1",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-7912cba2-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.873Z",
"finishedAt": "2026-10-02T11:29:29.875Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.875Z",
"finishedAt": "2026-10-02T11:29:29.883Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.883Z",
"finishedAt": "2026-10-02T11:29:31.485Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:29:31.485Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:29:29.875Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:30:07.664Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8/events",
"status": 200
},
{
"time": "2026-10-02T11:30:09.633Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "7912cba2-097a-4f18-943c-c90868f51bb8",
"idempotencyKey": "24bc11bb-4118-4498-8e36-62951d4cfafb",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新实时服务",
"createdAt": "2026-10-02T11:29:29.873Z",
"updatedAt": "2026-10-02T11:30:00.082Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-7912cba2-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "verifying",
"targetImageId": "sha256:28a9f2e85c90238cb1f570c252a548cdfb678835bdb030ab5a9aa35a99e3f9b1",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-7912cba2-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.873Z",
"finishedAt": "2026-10-02T11:29:29.875Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.875Z",
"finishedAt": "2026-10-02T11:29:29.883Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.883Z",
"finishedAt": "2026-10-02T11:29:31.485Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:29:31.485Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:29:29.875Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:30:09.734Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8/events",
"status": 200
},
{
"time": "2026-10-02T11:30:11.715Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "7912cba2-097a-4f18-943c-c90868f51bb8",
"idempotencyKey": "24bc11bb-4118-4498-8e36-62951d4cfafb",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新实时服务",
"createdAt": "2026-10-02T11:29:29.873Z",
"updatedAt": "2026-10-02T11:30:00.082Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-7912cba2-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "verifying",
"targetImageId": "sha256:28a9f2e85c90238cb1f570c252a548cdfb678835bdb030ab5a9aa35a99e3f9b1",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-7912cba2-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.873Z",
"finishedAt": "2026-10-02T11:29:29.875Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.875Z",
"finishedAt": "2026-10-02T11:29:29.883Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.883Z",
"finishedAt": "2026-10-02T11:29:31.485Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:29:31.485Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:29:29.875Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:30:11.795Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8/events",
"status": 200
},
{
"time": "2026-10-02T11:30:13.867Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "7912cba2-097a-4f18-943c-c90868f51bb8",
"idempotencyKey": "24bc11bb-4118-4498-8e36-62951d4cfafb",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新网页服务",
"createdAt": "2026-10-02T11:29:29.873Z",
"updatedAt": "2026-10-02T11:30:12.938Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-7912cba2-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:28a9f2e85c90238cb1f570c252a548cdfb678835bdb030ab5a9aa35a99e3f9b1",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-7912cba2-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "web",
"containerName": "easyai-web",
"status": "verifying",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-7912cba2-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
}
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.873Z",
"finishedAt": "2026-10-02T11:29:29.875Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.875Z",
"finishedAt": "2026-10-02T11:29:29.883Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.883Z",
"finishedAt": "2026-10-02T11:29:31.485Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:29:31.485Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:29:29.875Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:30:14.106Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8/events",
"status": 200
},
{
"time": "2026-10-02T11:30:15.987Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "7912cba2-097a-4f18-943c-c90868f51bb8",
"idempotencyKey": "24bc11bb-4118-4498-8e36-62951d4cfafb",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新网页服务",
"createdAt": "2026-10-02T11:29:29.873Z",
"updatedAt": "2026-10-02T11:30:12.938Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-7912cba2-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:28a9f2e85c90238cb1f570c252a548cdfb678835bdb030ab5a9aa35a99e3f9b1",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-7912cba2-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "web",
"containerName": "easyai-web",
"status": "verifying",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-7912cba2-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
}
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.873Z",
"finishedAt": "2026-10-02T11:29:29.875Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.875Z",
"finishedAt": "2026-10-02T11:29:29.883Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.883Z",
"finishedAt": "2026-10-02T11:29:31.485Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:29:31.485Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:29:29.875Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:30:16.161Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8/events",
"status": 200
},
{
"time": "2026-10-02T11:30:18.082Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "7912cba2-097a-4f18-943c-c90868f51bb8",
"idempotencyKey": "24bc11bb-4118-4498-8e36-62951d4cfafb",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新网页服务",
"createdAt": "2026-10-02T11:29:29.873Z",
"updatedAt": "2026-10-02T11:30:12.938Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-7912cba2-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:28a9f2e85c90238cb1f570c252a548cdfb678835bdb030ab5a9aa35a99e3f9b1",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-7912cba2-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "web",
"containerName": "easyai-web",
"status": "verifying",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-7912cba2-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
}
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.873Z",
"finishedAt": "2026-10-02T11:29:29.875Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.875Z",
"finishedAt": "2026-10-02T11:29:29.883Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.883Z",
"finishedAt": "2026-10-02T11:29:31.485Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:29:31.485Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:29:29.875Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:30:18.261Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8/events",
"status": 200
},
{
"time": "2026-10-02T11:30:20.155Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "7912cba2-097a-4f18-943c-c90868f51bb8",
"idempotencyKey": "24bc11bb-4118-4498-8e36-62951d4cfafb",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新网页服务",
"createdAt": "2026-10-02T11:29:29.873Z",
"updatedAt": "2026-10-02T11:30:12.938Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-7912cba2-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:28a9f2e85c90238cb1f570c252a548cdfb678835bdb030ab5a9aa35a99e3f9b1",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-7912cba2-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "web",
"containerName": "easyai-web",
"status": "verifying",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-7912cba2-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
}
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.873Z",
"finishedAt": "2026-10-02T11:29:29.875Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.875Z",
"finishedAt": "2026-10-02T11:29:29.883Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.883Z",
"finishedAt": "2026-10-02T11:29:31.485Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:29:31.485Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:29:29.875Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:30:20.255Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8/events",
"status": 200
},
{
"time": "2026-10-02T11:30:22.239Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "7912cba2-097a-4f18-943c-c90868f51bb8",
"idempotencyKey": "24bc11bb-4118-4498-8e36-62951d4cfafb",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新网页服务",
"createdAt": "2026-10-02T11:29:29.873Z",
"updatedAt": "2026-10-02T11:30:12.938Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-7912cba2-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:28a9f2e85c90238cb1f570c252a548cdfb678835bdb030ab5a9aa35a99e3f9b1",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-7912cba2-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "web",
"containerName": "easyai-web",
"status": "verifying",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-7912cba2-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
}
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.873Z",
"finishedAt": "2026-10-02T11:29:29.875Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.875Z",
"finishedAt": "2026-10-02T11:29:29.883Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.883Z",
"finishedAt": "2026-10-02T11:29:31.485Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:29:31.485Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:29:29.875Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:30:22.346Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8/events",
"status": 200
},
{
"time": "2026-10-02T11:31:05.488Z",
"path": "/api/app/update-jobs/7912cba2-097a-4f18-943c-c90868f51bb8",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "7912cba2-097a-4f18-943c-c90868f51bb8",
"idempotencyKey": "24bc11bb-4118-4498-8e36-62951d4cfafb",
"action": "update",
"source": "manual",
"status": "succeeded",
"phase": "finished",
"message": "更新完成,所有核心服务均已通过检查",
"createdAt": "2026-10-02T11:29:29.873Z",
"updatedAt": "2026-10-02T11:30:25.143Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:28a9f2e85c90238cb1f570c252a548cdfb678835bdb030ab5a9aa35a99e3f9b1",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.873Z",
"finishedAt": "2026-10-02T11:29:29.875Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.875Z",
"finishedAt": "2026-10-02T11:29:29.883Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:29:29.883Z",
"finishedAt": "2026-10-02T11:29:31.485Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:29:31.485Z",
"finishedAt": "2026-10-02T11:30:24.956Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "completed",
"startedAt": "2026-10-02T11:30:24.956Z",
"finishedAt": "2026-10-02T11:30:25.143Z"
},
{
"id": "finished",
"title": "完成",
"status": "completed",
"finishedAt": "2026-10-02T11:30:25.143Z"
}
],
"startedAt": "2026-10-02T11:29:29.875Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2",
"finishedAt": "2026-10-02T11:30:25.143Z"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:32:06.525Z",
"path": "/api/app/update-jobs",
"status": 200,
"value": {
"status": "success",
"data": [],
"message": "success"
}
},
{
"time": "2026-10-02T11:33:26.463Z",
"path": "/api/app/update-jobs",
"status": 200,
"value": {
"status": "success",
"data": [],
"message": "success"
}
},
{
"time": "2026-10-02T11:33:41.352Z",
"path": "/api/app/update-capabilities",
"status": 200,
"value": {
"status": "success",
"data": {
"mode": "managed",
"jobApi": true,
"executorReachable": true,
"updaterVersion": "1.1.0",
"deploymentSchemaVersion": 2,
"executor": "updater",
"eventApi": true
},
"message": "success"
}
},
{
"time": "2026-10-02T11:33:41.508Z",
"path": "/api/app/update-jobs",
"status": 201,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "queued",
"phase": "queued",
"message": "更新任务已创建,正在等待执行",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:33:41.421Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "pending"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "pending"
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "running",
"startedAt": "2026-10-02T11:33:41.421Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "pending"
},
{
"id": "pulling",
"title": "下载更新",
"status": "pending"
},
{
"id": "applying",
"title": "更新服务",
"status": "pending"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
]
},
"message": "success"
}
},
{
"time": "2026-10-02T11:33:41.590Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:33:43.595Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:33:43.653Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:33:45.685Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:33:45.762Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:33:47.778Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:33:47.862Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:33:49.863Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:33:49.934Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:33:51.950Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:33:52.033Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:33:54.036Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:33:54.121Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:33:56.123Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:33:56.211Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:33:58.244Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:33:58.332Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:34:00.336Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:34:00.393Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:34:02.408Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:34:02.467Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:34:04.474Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:34:04.581Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:34:06.594Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:34:06.684Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:34:08.681Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:34:08.761Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:34:10.792Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:34:10.891Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:34:12.886Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:34:12.971Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:34:15.038Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新主服务",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:33:44.964Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "verifying",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
}
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "pending",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6"
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:34:15.122Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:34:17.374Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新实时服务",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:34:17.229Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "applying",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:34:17.462Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:34:19.515Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新实时服务",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:34:17.972Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "verifying",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:34:19.634Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:34:21.633Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新实时服务",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:34:17.972Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "verifying",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:34:21.773Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:34:23.732Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新实时服务",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:34:17.972Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "verifying",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:34:23.804Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:34:25.830Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新实时服务",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:34:17.972Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "verifying",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:34:25.913Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:34:27.941Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新实时服务",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:34:17.972Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "verifying",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:34:28.051Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:34:30.045Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新实时服务",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:34:17.972Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "verifying",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:34:30.150Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:34:32.152Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新实时服务",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:34:17.972Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "verifying",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:34:32.241Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:34:34.274Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新实时服务",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:34:17.972Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "verifying",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:34:34.372Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:34:36.356Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新实时服务",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:34:17.972Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "verifying",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:34:36.443Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:34:38.443Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新实时服务",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:34:17.972Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "verifying",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:34:38.540Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:34:40.544Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新实时服务",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:34:17.972Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "verifying",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:34:40.634Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:34:42.653Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新实时服务",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:34:17.972Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "verifying",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:34:42.741Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:34:44.743Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新实时服务",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:34:17.972Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "verifying",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:34:44.842Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:34:46.852Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新实时服务",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:34:17.972Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "verifying",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:34:46.955Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:34:48.948Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新实时服务",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:34:17.972Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "verifying",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:34:49.033Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:34:51.046Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新实时服务",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:34:17.972Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "verifying",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:34:51.151Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:34:53.144Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新实时服务",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:34:17.972Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "verifying",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:34:53.222Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:34:55.805Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新实时服务",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:34:17.972Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "verifying",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:34:55.890Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:34:57.933Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新实时服务",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:34:17.972Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "verifying",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:34:58.022Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:35:00.095Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新实时服务",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:34:17.972Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "verifying",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:35:00.182Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:35:03.074Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "pulling",
"message": "正在拉取更新镜像,现有服务会继续运行",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:02.478Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "pending",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "pending",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pulling",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:35:03.132Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:35:05.244Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新网页服务",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:03.460Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "applying",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
}
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:35:05.332Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:35:07.403Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新网页服务",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:05.249Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "verifying",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
}
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:35:07.491Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:35:09.492Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新网页服务",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:05.249Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "verifying",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
}
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:35:09.585Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:35:11.591Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:35:11.681Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:35:13.703Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:35:13.792Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:35:15.793Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:35:15.862Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:35:18.042Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:35:18.191Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:35:20.141Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:35:20.284Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:35:22.235Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:35:22.382Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:35:24.343Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:35:24.493Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:35:26.435Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:35:26.583Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:35:28.641Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:35:28.803Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:35:30.811Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:35:30.911Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:35:32.911Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:35:33.019Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:35:35.022Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:35:35.130Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:35:37.113Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:35:37.201Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:35:39.202Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:35:39.312Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:35:41.302Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:35:41.418Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:35:43.403Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:35:43.503Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:35:45.485Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:35:45.573Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:35:47.592Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:35:47.783Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:35:49.708Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:35:49.784Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:35:51.804Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:35:51.968Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:35:53.890Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:35:54.011Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:35:55.981Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:35:56.068Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:35:58.110Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:35:58.183Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:36:00.191Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:36:00.272Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:36:02.281Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:36:02.409Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:36:04.372Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:36:04.531Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:36:06.474Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:36:06.561Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:36:08.603Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:36:08.681Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:36:10.692Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "verifying",
"message": "正在确认新版本服务状态",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:35:11.300Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-d0f02915-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:36:10.800Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:36:12.802Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "running",
"phase": "rolling_back",
"message": "新版本检查未通过,正在恢复原版本",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:36:12.007Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-d0f02915-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"backupContainerName": "easyai-update-backup-d0f02915-ws-gateway",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "rolled_back",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "running",
"startedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:36:12.880Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 200
},
{
"time": "2026-10-02T11:36:14.890Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:36:15.001Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:36:16.984Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:36:17.072Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:36:19.051Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:36:19.229Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:36:21.152Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:36:21.309Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:36:23.243Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:36:23.333Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:36:25.342Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:36:25.401Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:36:27.441Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:36:27.570Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:36:29.530Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:36:29.644Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:36:31.630Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:36:31.732Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:36:33.736Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:36:33.840Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:36:35.830Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:36:35.883Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:36:37.922Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:36:38.043Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:36:40.054Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:36:40.219Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:36:42.139Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:36:42.220Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:36:44.233Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 502
},
{
"time": "2026-10-02T11:36:44.410Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7/events",
"status": 502
},
{
"time": "2026-10-02T11:36:46.391Z",
"path": "/api/app/update-jobs/d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "d0f02915-1cbe-4063-94c6-e9d749aaf2d7",
"idempotencyKey": "c05c99af-affd-482b-98e1-eca9dea21c6b",
"action": "update",
"source": "manual",
"status": "rolled_back",
"phase": "finished",
"message": "新版本未能正常启动,已恢复原版本",
"createdAt": "2026-10-02T11:33:41.418Z",
"updatedAt": "2026-10-02T11:36:15.937Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "rolled_back",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "rolled_back",
"targetImageId": "sha256:4fb8a96a311686f59ab142dd150f7a2df8662a8b9f19233f9b06cfe548c899d6",
"previousImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-wsgateway",
"ws-gateway"
],
"links": null,
"ipv4Address": "172.21.0.5",
"ipv6Address": ""
}
}
},
{
"key": "web",
"containerName": "easyai-web",
"status": "rolled_back",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.421Z",
"finishedAt": "2026-10-02T11:33:41.426Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.426Z",
"finishedAt": "2026-10-02T11:33:41.432Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:33:41.432Z",
"finishedAt": "2026-10-02T11:33:43.339Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:33:43.339Z",
"finishedAt": "2026-10-02T11:35:11.300Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "failed",
"startedAt": "2026-10-02T11:35:11.300Z",
"finishedAt": "2026-10-02T11:36:15.936Z"
},
{
"id": "finished",
"title": "完成",
"status": "failed",
"finishedAt": "2026-10-02T11:36:15.936Z"
}
],
"startedAt": "2026-10-02T11:33:41.426Z",
"releaseId": "update-rollback-acceptance-20261002",
"productVersion": "3.22.0.20261002.2",
"reasonCode": "healthcheck_failed",
"finishedAt": "2026-10-02T11:36:15.936Z"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:37:32.724Z",
"path": "/api/app/update-capabilities",
"status": 200,
"value": {
"status": "success",
"data": {
"mode": "managed",
"jobApi": true,
"executorReachable": true,
"updaterVersion": "1.1.0",
"deploymentSchemaVersion": 2,
"executor": "updater",
"eventApi": true
},
"message": "success"
}
},
{
"time": "2026-10-02T11:37:32.909Z",
"path": "/api/app/update-jobs",
"status": 201,
"value": {
"status": "success",
"data": {
"id": "154b6781-dd24-434d-94a5-4bf59122c0bb",
"idempotencyKey": "c00a35c9-6e10-4ab1-9915-5e44f58e2daf",
"action": "update",
"source": "manual",
"status": "queued",
"phase": "queued",
"message": "更新任务已创建,正在等待执行",
"createdAt": "2026-10-02T11:37:32.825Z",
"updatedAt": "2026-10-02T11:37:32.826Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "pending"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "pending"
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "running",
"startedAt": "2026-10-02T11:37:32.825Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "pending"
},
{
"id": "pulling",
"title": "下载更新",
"status": "pending"
},
{
"id": "applying",
"title": "更新服务",
"status": "pending"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
]
},
"message": "success"
}
},
{
"time": "2026-10-02T11:37:32.975Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb/events",
"status": 200
},
{
"time": "2026-10-02T11:37:35.025Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb",
"status": 502
},
{
"time": "2026-10-02T11:37:35.219Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb/events",
"status": 502
},
{
"time": "2026-10-02T11:37:37.140Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb",
"status": 502
},
{
"time": "2026-10-02T11:37:37.231Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb/events",
"status": 502
},
{
"time": "2026-10-02T11:37:39.232Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb",
"status": 502
},
{
"time": "2026-10-02T11:37:39.289Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb/events",
"status": 502
},
{
"time": "2026-10-02T11:37:41.334Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb",
"status": 502
},
{
"time": "2026-10-02T11:37:41.703Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb/events",
"status": 502
},
{
"time": "2026-10-02T11:37:43.421Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb",
"status": 502
},
{
"time": "2026-10-02T11:37:43.608Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb/events",
"status": 502
},
{
"time": "2026-10-02T11:37:45.511Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb",
"status": 502
},
{
"time": "2026-10-02T11:37:45.701Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb/events",
"status": 502
},
{
"time": "2026-10-02T11:37:47.628Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb",
"status": 502
},
{
"time": "2026-10-02T11:37:47.809Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb/events",
"status": 502
},
{
"time": "2026-10-02T11:37:49.714Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb",
"status": 502
},
{
"time": "2026-10-02T11:37:49.770Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb/events",
"status": 502
},
{
"time": "2026-10-02T11:37:51.801Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb",
"status": 502
},
{
"time": "2026-10-02T11:37:51.989Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb/events",
"status": 502
},
{
"time": "2026-10-02T11:37:53.883Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb",
"status": 502
},
{
"time": "2026-10-02T11:37:54.041Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb/events",
"status": 502
},
{
"time": "2026-10-02T11:37:55.972Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb",
"status": 502
},
{
"time": "2026-10-02T11:37:56.089Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb/events",
"status": 502
},
{
"time": "2026-10-02T11:37:58.067Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb",
"status": 502
},
{
"time": "2026-10-02T11:37:58.230Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb/events",
"status": 502
},
{
"time": "2026-10-02T11:38:00.162Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb",
"status": 502
},
{
"time": "2026-10-02T11:38:00.312Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb/events",
"status": 502
},
{
"time": "2026-10-02T11:38:02.241Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb",
"status": 502
},
{
"time": "2026-10-02T11:38:02.329Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb/events",
"status": 502
},
{
"time": "2026-10-02T11:38:04.333Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb",
"status": 502
},
{
"time": "2026-10-02T11:38:04.409Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb/events",
"status": 502
},
{
"time": "2026-10-02T11:38:06.450Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb",
"status": 502
},
{
"time": "2026-10-02T11:38:06.558Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb/events",
"status": 502
},
{
"time": "2026-10-02T11:38:08.532Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb",
"status": 502
},
{
"time": "2026-10-02T11:38:08.698Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb/events",
"status": 502
},
{
"time": "2026-10-02T11:38:10.693Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "154b6781-dd24-434d-94a5-4bf59122c0bb",
"idempotencyKey": "c00a35c9-6e10-4ab1-9915-5e44f58e2daf",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新主服务",
"createdAt": "2026-10-02T11:37:32.825Z",
"updatedAt": "2026-10-02T11:37:34.698Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "verifying",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-154b6781-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
}
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "pending",
"targetImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5"
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:37:32.825Z",
"finishedAt": "2026-10-02T11:37:32.827Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:37:32.827Z",
"finishedAt": "2026-10-02T11:37:32.829Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:37:32.829Z",
"finishedAt": "2026-10-02T11:37:33.478Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:37:33.478Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:37:32.827Z",
"releaseId": "online-update-progress-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:38:10.759Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb/events",
"status": 200
},
{
"time": "2026-10-02T11:38:12.771Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "154b6781-dd24-434d-94a5-4bf59122c0bb",
"idempotencyKey": "c00a35c9-6e10-4ab1-9915-5e44f58e2daf",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新主服务",
"createdAt": "2026-10-02T11:37:32.825Z",
"updatedAt": "2026-10-02T11:37:34.698Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "verifying",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-154b6781-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
}
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "pending",
"targetImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5"
},
{
"key": "web",
"containerName": "easyai-web",
"status": "pending",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:37:32.825Z",
"finishedAt": "2026-10-02T11:37:32.827Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:37:32.827Z",
"finishedAt": "2026-10-02T11:37:32.829Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:37:32.829Z",
"finishedAt": "2026-10-02T11:37:33.478Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:37:33.478Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:37:32.827Z",
"releaseId": "online-update-progress-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:38:12.900Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb/events",
"status": 200
},
{
"time": "2026-10-02T11:38:14.901Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "154b6781-dd24-434d-94a5-4bf59122c0bb",
"idempotencyKey": "c00a35c9-6e10-4ab1-9915-5e44f58e2daf",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新网页服务",
"createdAt": "2026-10-02T11:37:32.825Z",
"updatedAt": "2026-10-02T11:38:14.129Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-154b6781-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5"
},
{
"key": "web",
"containerName": "easyai-web",
"status": "verifying",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-154b6781-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
}
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:37:32.825Z",
"finishedAt": "2026-10-02T11:37:32.827Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:37:32.827Z",
"finishedAt": "2026-10-02T11:37:32.829Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:37:32.829Z",
"finishedAt": "2026-10-02T11:37:33.478Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:37:33.478Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:37:32.827Z",
"releaseId": "online-update-progress-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:38:15.029Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb/events",
"status": 200
},
{
"time": "2026-10-02T11:38:17.049Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "154b6781-dd24-434d-94a5-4bf59122c0bb",
"idempotencyKey": "c00a35c9-6e10-4ab1-9915-5e44f58e2daf",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新网页服务",
"createdAt": "2026-10-02T11:37:32.825Z",
"updatedAt": "2026-10-02T11:38:14.129Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-154b6781-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5"
},
{
"key": "web",
"containerName": "easyai-web",
"status": "verifying",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-154b6781-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
}
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:37:32.825Z",
"finishedAt": "2026-10-02T11:37:32.827Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:37:32.827Z",
"finishedAt": "2026-10-02T11:37:32.829Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:37:32.829Z",
"finishedAt": "2026-10-02T11:37:33.478Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:37:33.478Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:37:32.827Z",
"releaseId": "online-update-progress-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:38:17.123Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb/events",
"status": 200
},
{
"time": "2026-10-02T11:38:19.199Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "154b6781-dd24-434d-94a5-4bf59122c0bb",
"idempotencyKey": "c00a35c9-6e10-4ab1-9915-5e44f58e2daf",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新网页服务",
"createdAt": "2026-10-02T11:37:32.825Z",
"updatedAt": "2026-10-02T11:38:14.129Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-154b6781-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5"
},
{
"key": "web",
"containerName": "easyai-web",
"status": "verifying",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-154b6781-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
}
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:37:32.825Z",
"finishedAt": "2026-10-02T11:37:32.827Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:37:32.827Z",
"finishedAt": "2026-10-02T11:37:32.829Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:37:32.829Z",
"finishedAt": "2026-10-02T11:37:33.478Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:37:33.478Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:37:32.827Z",
"releaseId": "online-update-progress-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:38:19.341Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb/events",
"status": 200
},
{
"time": "2026-10-02T11:38:21.349Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "154b6781-dd24-434d-94a5-4bf59122c0bb",
"idempotencyKey": "c00a35c9-6e10-4ab1-9915-5e44f58e2daf",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新网页服务",
"createdAt": "2026-10-02T11:37:32.825Z",
"updatedAt": "2026-10-02T11:38:14.129Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-154b6781-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5"
},
{
"key": "web",
"containerName": "easyai-web",
"status": "verifying",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-154b6781-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
}
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:37:32.825Z",
"finishedAt": "2026-10-02T11:37:32.827Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:37:32.827Z",
"finishedAt": "2026-10-02T11:37:32.829Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:37:32.829Z",
"finishedAt": "2026-10-02T11:37:33.478Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:37:33.478Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:37:32.827Z",
"releaseId": "online-update-progress-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:38:21.530Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb/events",
"status": 200
},
{
"time": "2026-10-02T11:38:23.478Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "154b6781-dd24-434d-94a5-4bf59122c0bb",
"idempotencyKey": "c00a35c9-6e10-4ab1-9915-5e44f58e2daf",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新网页服务",
"createdAt": "2026-10-02T11:37:32.825Z",
"updatedAt": "2026-10-02T11:38:14.129Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-154b6781-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5"
},
{
"key": "web",
"containerName": "easyai-web",
"status": "verifying",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-154b6781-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
}
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:37:32.825Z",
"finishedAt": "2026-10-02T11:37:32.827Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:37:32.827Z",
"finishedAt": "2026-10-02T11:37:32.829Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:37:32.829Z",
"finishedAt": "2026-10-02T11:37:33.478Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:37:33.478Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:37:32.827Z",
"releaseId": "online-update-progress-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:38:23.555Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb/events",
"status": 200
},
{
"time": "2026-10-02T11:38:25.601Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "154b6781-dd24-434d-94a5-4bf59122c0bb",
"idempotencyKey": "c00a35c9-6e10-4ab1-9915-5e44f58e2daf",
"action": "update",
"source": "manual",
"status": "running",
"phase": "applying",
"message": "正在更新网页服务",
"createdAt": "2026-10-02T11:37:32.825Z",
"updatedAt": "2026-10-02T11:38:14.129Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"backupContainerName": "easyai-update-backup-154b6781-server-main",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5"
},
{
"key": "web",
"containerName": "easyai-web",
"status": "verifying",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"backupContainerName": "easyai-update-backup-154b6781-web",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
}
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:37:32.825Z",
"finishedAt": "2026-10-02T11:37:32.827Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:37:32.827Z",
"finishedAt": "2026-10-02T11:37:32.829Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:37:32.829Z",
"finishedAt": "2026-10-02T11:37:33.478Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "running",
"startedAt": "2026-10-02T11:37:33.478Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "pending"
},
{
"id": "finished",
"title": "完成",
"status": "pending"
}
],
"startedAt": "2026-10-02T11:37:32.827Z",
"releaseId": "online-update-progress-20261002",
"productVersion": "3.22.0.20261002.2"
},
"message": "success"
}
},
{
"time": "2026-10-02T11:38:25.847Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb/events",
"status": 200
},
{
"time": "2026-10-02T11:38:30.532Z",
"path": "/api/app/update-jobs/154b6781-dd24-434d-94a5-4bf59122c0bb",
"status": 200,
"value": {
"status": "success",
"data": {
"id": "154b6781-dd24-434d-94a5-4bf59122c0bb",
"idempotencyKey": "c00a35c9-6e10-4ab1-9915-5e44f58e2daf",
"action": "update",
"source": "manual",
"status": "succeeded",
"phase": "finished",
"message": "更新完成,所有核心服务均已通过检查",
"createdAt": "2026-10-02T11:37:32.825Z",
"updatedAt": "2026-10-02T11:38:26.397Z",
"previousVersion": "3.22.0.20261002.1",
"components": [
{
"key": "server-main",
"containerName": "easyai-server",
"status": "succeeded",
"targetImageId": "sha256:72ec514ed221c424422542f7922f3962b03de969a65e3ffec058fa7cd70e1fea",
"previousImageId": "sha256:6a809aacd82dd70c23ef1f3873bab3f46c7daa824a5c3b6196bfb6dadb1718af",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.21.0.6",
"ipv6Address": ""
},
"easyai_sandbox-network": {
"networkId": "b2daf0ea06fc85a171ed60f0a3fb7a58e7ca56fad15490fb2e589ad05e0ffffc",
"aliases": [
"easyai-server",
"easyai-server"
],
"links": null,
"ipv4Address": "172.20.0.2",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
},
{
"key": "ws-gateway",
"containerName": "easyai-wsgateway",
"status": "succeeded",
"targetImageId": "sha256:821ed6a69be4771c57a7bf67084455a4c0c7e4c9e201b8e7bcb2dedf1fb229f5"
},
{
"key": "web",
"containerName": "easyai-web",
"status": "succeeded",
"targetImageId": "sha256:4161c653ff66e92e0f24f0b175bb9b3a447f095c0e55b238f480a12ddce2821f",
"previousImageId": "sha256:73689c521bdc5ecb57171c0fc629b6746491769dd2e015b9abb4e0d6091cbc07",
"networks": {
"easyai_easyai": {
"networkId": "c4265a68ef2b242f0a7d26e4a059d2d62e8aedf5db7029c27fc3676ea779b170",
"aliases": [
"easyai-web",
"easyai-web"
],
"links": null,
"ipv4Address": "172.21.0.8",
"ipv6Address": ""
}
},
"message": "新版本已通过检查"
}
],
"executor": "updater",
"steps": [
{
"id": "queued",
"title": "提交请求",
"status": "completed",
"startedAt": "2026-10-02T11:37:32.825Z",
"finishedAt": "2026-10-02T11:37:32.827Z"
},
{
"id": "prechecking",
"title": "检查环境",
"status": "completed",
"startedAt": "2026-10-02T11:37:32.827Z",
"finishedAt": "2026-10-02T11:37:32.829Z"
},
{
"id": "pulling",
"title": "下载更新",
"status": "completed",
"startedAt": "2026-10-02T11:37:32.829Z",
"finishedAt": "2026-10-02T11:37:33.478Z"
},
{
"id": "applying",
"title": "更新服务",
"status": "completed",
"startedAt": "2026-10-02T11:37:33.478Z",
"finishedAt": "2026-10-02T11:38:26.153Z"
},
{
"id": "verifying",
"title": "验证版本",
"status": "completed",
"startedAt": "2026-10-02T11:38:26.153Z",
"finishedAt": "2026-10-02T11:38:26.397Z"
},
{
"id": "finished",
"title": "完成",
"status": "completed",
"finishedAt": "2026-10-02T11:38:26.397Z"
}
],
"startedAt": "2026-10-02T11:37:32.827Z",
"releaseId": "online-update-progress-20261002",
"productVersion": "3.22.0.20261002.2",
"finishedAt": "2026-10-02T11:38:26.397Z"
},
"message": "success"
}
}
]