Commit f33c80a6 by Archer Committed by GitHub

perf: deploy (#6972)

* perf: deploy

* doc
parent 14373770
...@@ -2,59 +2,36 @@ ...@@ -2,59 +2,36 @@
### 正常更新(不动服务,只改版本) ### 正常更新(不动服务,只改版本)
1. 更新 `args.json` 中的版本号 1. 更新 `version/{version}/args.json` 中的版本号,例如 `version/v4.14/args.json``version/main/args.json`
2.`FastGPT` 目录执行 `pnpm run gen:deploy` 即可 2.`FastGPT` 目录执行 `node deploy/init.mjs` 即可
3. 脚本会同时更新 `deploy/dev``document/public/deploy/install.sh``document/public/deploy/docker/{version}` 下的 Docker 部署文件
### 加版本
比如要添加 `v4.15` 稳定版:
1. 创建 `version/v4.15`
2. 添加 `version/v4.15/args.json`
3. 添加 `version/v4.15/docker-compose.template.yml`
4. 执行 `node deploy/init.mjs`,脚本会自动扫描并生成 `document/public/deploy/docker/v4.15`
### 加服务 ### 加服务
比如要添加 `example` 服务: 比如要添加 `example` 服务:
1. `init.mjs``Services Enum` 中添加 fastgptExample: fastgpt-example 1. `init.mjs``Services Enum` 中添加 fastgptExample: fastgpt-example
2.`args.json` 中添加 image 和 tag, 注意 `args.json``key` 值,要和 `init.mjs``value` 值一致。 2. 在所有 `version/*/args.json` 中添加 image 和 tag, 注意 `args``key` 值,要和 `init.mjs``value` 值一致。
3. 更新 templates/docker-compose.[dev|prod].yml 文件,把服务的相关配置加进去,并且:服务的 image 改为 ${{example.image}}:${{example.tag}} 3. 更新所有需要生效的 `version/*/docker-compose.template.yml` 文件,把服务的相关配置加进去,并且:服务的 image 改为 ${{example.image}}:${{example.tag}}
4. 如需同步开发环境,再更新 `templates/docker-compose.dev.yml`
5. 执行 `node deploy/init.mjs` 重新生成部署文件
### 加向量库 ### 加向量库
比如添加 `exampleDB` 向量库: 比如添加 `exampleDB` 向量库:
1. 添加 vector service 配置在 `templates/vector` 下面,例如 `templates/vector/exampleDB.txt` 内容可以参考其他 txt,注意缩进,image 名字也要替换成 ${{exampleDB.image}}:${{exampleDB:tag}}, service name 必须是 `vectorDB` 1. 添加 vector service 配置在 `templates/vector` 下面,例如 `templates/vector/exampleDB.txt` 内容可以参考其他 txt,注意缩进,image 名字也要替换成 ${{exampleDB.image}}:${{exampleDB:tag}}, service name 必须是 `vectorDB`
2.`args.json` 中添加 `exampleDB` 的配置 2. 在所有 `version/*/args.json` 中添加 `exampleDB` 的配置
3. init.mjs vector enum 中添加 `vector` 3. 添加连接配置片段,例如 `templates/vector/exampleDB.config.txt`
4. init.mjs 中添加 vector 的相关配置: 4. 如需额外 `configs`,添加 `templates/vector/exampleDB.extra.txt`
5.`templates/vector/config.json` 中添加向量库配置,声明输出文件名、service 片段、连接配置和 extra 片段
```ts 6. 执行 `node deploy/init.mjs` 重新生成部署文件
const vector = {
// pg, milvus, ob ...
vector: {
db: '', // 空即可
config: `/
VECTOR_URL:vectordb://xxxxx
`, //注意 第一行反引号后面的 / 不能少(去除首个换行符); 左边的两个空格的缩进不能变,否则会语法错误
extra: `` // 额外的配置,可以看 ob 的那个,需要一个 config 字段引入 init.sql
}
}
```
5. init.mjs 读入 vector 配置
```json
{ // 这是个块作用域, 直接搜 read in Vectors
// read in Vectors
// pg, ob ....
const vectordb = fs.readFileSync(path.join(process.cwd(), 'templates', 'vector', 'vector.txt'));
vector.vector.db = String(vectordb);
}
```
6. init.mjs 最后生成的时候,需要添加
```ts
fs.promises.writeFile(
path.join(process.cwd(), 'docker', 'cn', 'docker-compose.vector.yml'),
replace(template, 'cn', VectorEnum.vector)
),
fs.promises.writeFile(
path.join(process.cwd(), 'docker', 'global', 'docker-compose.zilliz.yml'),
replace(template, 'global', VectorEnum.vector)
),
```
## yaml 的锚点和引用 ## yaml 的锚点和引用
......
...@@ -174,7 +174,7 @@ services: ...@@ -174,7 +174,7 @@ services:
retries: 3 retries: 3
fastgpt-code-sandbox: fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox container_name: fastgpt-code-sandbox
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.15.0-beta1
ports: ports:
- 3002:3000 - 3002:3000
networks: networks:
...@@ -220,7 +220,7 @@ services: ...@@ -220,7 +220,7 @@ services:
retries: 3 retries: 3
fastgpt-mcp-server: fastgpt-mcp-server:
container_name: fastgpt-mcp-server container_name: fastgpt-mcp-server
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.15.0-beta1
ports: ports:
- 3003:3000 - 3003:3000
networks: networks:
...@@ -281,7 +281,7 @@ services: ...@@ -281,7 +281,7 @@ services:
retries: 5 retries: 5
# Pre-pull only: not started by `docker compose up` (uses profile `prepull`). # Pre-pull only: not started by `docker compose up` (uses profile `prepull`).
opensandbox-agent-sandbox-image: opensandbox-agent-sandbox-image:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox:v0.1 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox:v0.2.0
profiles: profiles:
- prepull - prepull
opensandbox-execd-image: opensandbox-execd-image:
...@@ -294,7 +294,7 @@ services: ...@@ -294,7 +294,7 @@ services:
- prepull - prepull
# 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC # 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC
fastgpt-volume-manager: fastgpt-volume-manager:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-volume-manager:v0.1 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-volume-manager:v0.2.0
container_name: fastgpt-volume-manager container_name: fastgpt-volume-manager
restart: always restart: always
ports: ports:
...@@ -323,7 +323,7 @@ services: ...@@ -323,7 +323,7 @@ services:
# AI Proxy # AI Proxy
fastgpt-aiproxy: fastgpt-aiproxy:
image: registry.cn-hangzhou.aliyuncs.com/labring/aiproxy:v0.5.6 image: registry.cn-hangzhou.aliyuncs.com/labring/aiproxy:v0.5.8
container_name: fastgpt-aiproxy container_name: fastgpt-aiproxy
restart: unless-stopped restart: unless-stopped
ports: ports:
......
...@@ -174,7 +174,7 @@ services: ...@@ -174,7 +174,7 @@ services:
retries: 3 retries: 3
fastgpt-code-sandbox: fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox container_name: fastgpt-code-sandbox
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.20 image: ghcr.io/labring/fastgpt-code-sandbox:v4.15.0-beta1
ports: ports:
- 3002:3000 - 3002:3000
networks: networks:
...@@ -220,7 +220,7 @@ services: ...@@ -220,7 +220,7 @@ services:
retries: 3 retries: 3
fastgpt-mcp-server: fastgpt-mcp-server:
container_name: fastgpt-mcp-server container_name: fastgpt-mcp-server
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.20 image: ghcr.io/labring/fastgpt-mcp_server:v4.15.0-beta1
ports: ports:
- 3003:3000 - 3003:3000
networks: networks:
...@@ -281,7 +281,7 @@ services: ...@@ -281,7 +281,7 @@ services:
retries: 5 retries: 5
# Pre-pull only: not started by `docker compose up` (uses profile `prepull`). # Pre-pull only: not started by `docker compose up` (uses profile `prepull`).
opensandbox-agent-sandbox-image: opensandbox-agent-sandbox-image:
image: ghcr.io/labring/fastgpt-agent-sandbox:v0.1 image: ghcr.io/labring/fastgpt-agent-sandbox:v0.2.0
profiles: profiles:
- prepull - prepull
opensandbox-execd-image: opensandbox-execd-image:
...@@ -294,7 +294,7 @@ services: ...@@ -294,7 +294,7 @@ services:
- prepull - prepull
# 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC # 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC
fastgpt-volume-manager: fastgpt-volume-manager:
image: ghcr.io/labring/fastgpt-agent-volume-manager:v0.1 image: ghcr.io/labring/fastgpt-agent-volume-manager:v0.2.0
container_name: fastgpt-volume-manager container_name: fastgpt-volume-manager
restart: always restart: always
ports: ports:
...@@ -323,7 +323,7 @@ services: ...@@ -323,7 +323,7 @@ services:
# AI Proxy # AI Proxy
fastgpt-aiproxy: fastgpt-aiproxy:
image: ghcr.io/labring/aiproxy:v0.5.6 image: ghcr.io/labring/aiproxy:v0.5.8
container_name: fastgpt-aiproxy container_name: fastgpt-aiproxy
restart: unless-stopped restart: unless-stopped
ports: ports:
......
{
"pg": {
"filename": "pg",
"dbFile": "pg.txt",
"configFile": "pg.config.txt"
},
"milvus": {
"filename": "milvus",
"dbFile": "milvus.txt",
"configFile": "milvus.config.txt"
},
"zilliz": {
"filename": "zilliz",
"configFile": "zilliz.config.txt"
},
"ob": {
"filename": "oceanbase",
"dbFile": "ob.txt",
"configFile": "ob.config.txt",
"extraFile": "ob.extra.txt"
},
"seekdb": {
"filename": "seekdb",
"dbFile": "seekdb.txt",
"configFile": "seekdb.config.txt"
},
"opengauss": {
"filename": "opengauss",
"dbFile": "opengauss.txt",
"configFile": "opengauss.config.txt"
}
}
MILVUS_ADDRESS: http://fastgpt-vector:19530
MILVUS_TOKEN: none
OCEANBASE_URL: mysql://root%40tenantname:tenantpassword@fastgpt-vector:2881/mysql
init_sql:
name: init_sql
content: |
ALTER SYSTEM SET ob_vector_memory_limit_percentage = 30;
OPENGAUSS_URL: postgresql://gaussdb:FastGPT@123@fastgpt-vector:5432/fastgpt
PG_URL: postgresql://username:password@fastgpt-vector:5432/postgres
SEEKDB_URL: mysql://root:seekdbpassword@fastgpt-vector:2881/mysql
MILVUS_ADDRESS: zilliz_cloud_address
MILVUS_TOKEN: zilliz_cloud_token
{ {
"tags": { "tags": {
"fastgpt": "v4.14.20", "fastgpt": "v4.15.0-beta1",
"fastgpt-code-sandbox": "v4.14.20", "fastgpt-code-sandbox": "v4.15.0-beta1",
"fastgpt-mcp_server": "v4.14.20", "fastgpt-mcp_server": "v4.15.0-beta1",
"fastgpt-plugin": "v0.6.2", "fastgpt-plugin": "v0.6.2",
"volume-manager": "v0.1", "volume-manager": "v0.2.0",
"agent-sandbox-image": "v0.1", "agent-sandbox-image": "v0.2.0",
"aiproxy": "v0.5.8",
"opensandbox-server": "v0.1.9", "opensandbox-server": "v0.1.9",
"opensandbox-execd": "v1.0.7", "opensandbox-execd": "v1.0.7",
"opensandbox-egress": "v1.0.3", "opensandbox-egress": "v1.0.3",
"aiproxy": "v0.5.6",
"aiproxy-pg": "0.8.0-pg15", "aiproxy-pg": "0.8.0-pg15",
"mongo": "5.0.32", "mongo": "5.0.32",
"redis": "7.2-alpine", "redis": "7.2-alpine",
......
{
"tags": {
"fastgpt": "v4.14.22",
"fastgpt-code-sandbox": "v4.14.22",
"fastgpt-mcp_server": "v4.14.22",
"fastgpt-plugin": "v0.6.2",
"volume-manager": "v0.1.2",
"agent-sandbox-image": "v0.1.2",
"aiproxy": "v0.5.8",
"opensandbox-server": "v0.1.9",
"opensandbox-execd": "v1.0.7",
"opensandbox-egress": "v1.0.3",
"aiproxy-pg": "0.8.0-pg15",
"mongo": "5.0.32",
"redis": "7.2-alpine",
"minio": "RELEASE.2025-09-07T16-13-09Z",
"pg": "0.8.0-pg15",
"milvus-minio": "RELEASE.2023-03-20T20-16-18Z",
"milvus-etcd": "v3.5.5",
"milvus-standalone": "v2.4.3",
"oceanbase": "4.3.5-lts",
"seekdb": "1.0.1.0-100000392025122619"
},
"images": {
"cn": {
"fastgpt": "registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt",
"fastgpt-plugin": "registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-plugin",
"fastgpt-code-sandbox": "registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox",
"fastgpt-mcp_server": "registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server",
"volume-manager": "registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-volume-manager",
"agent-sandbox-image": "registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox",
"opensandbox-server": "registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-server",
"opensandbox-execd": "registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-execd",
"opensandbox-egress": "registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-egress",
"aiproxy": "registry.cn-hangzhou.aliyuncs.com/labring/aiproxy",
"aiproxy-pg": "registry.cn-hangzhou.aliyuncs.com/fastgpt/pgvector",
"mongo": "registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo",
"redis": "registry.cn-hangzhou.aliyuncs.com/fastgpt/redis",
"minio": "registry.cn-hangzhou.aliyuncs.com/fastgpt/minio",
"pg": "registry.cn-hangzhou.aliyuncs.com/fastgpt/pgvector",
"milvus-minio": "minio/minio",
"milvus-etcd": "quay.io/coreos/etcd",
"milvus-standalone": "milvusdb/milvus",
"oceanbase": "oceanbase/oceanbase-ce",
"seekdb": "oceanbase/seekdb"
},
"global": {
"fastgpt": "ghcr.io/labring/fastgpt",
"fastgpt-plugin": "ghcr.io/labring/fastgpt-plugin",
"fastgpt-code-sandbox": "ghcr.io/labring/fastgpt-code-sandbox",
"fastgpt-mcp_server": "ghcr.io/labring/fastgpt-mcp_server",
"volume-manager": "ghcr.io/labring/fastgpt-agent-volume-manager",
"agent-sandbox-image": "ghcr.io/labring/fastgpt-agent-sandbox",
"opensandbox-server": "opensandbox/server",
"opensandbox-execd": "opensandbox/execd",
"opensandbox-egress": "opensandbox/egress",
"aiproxy": "ghcr.io/labring/aiproxy",
"aiproxy-pg": "pgvector/pgvector",
"mongo": "mongo",
"redis": "redis",
"minio": "minio/minio",
"pg": "pgvector/pgvector",
"milvus-minio": "minio/minio",
"milvus-etcd": "quay.io/coreos/etcd",
"milvus-standalone": "milvusdb/milvus",
"oceanbase": "oceanbase/oceanbase-ce",
"seekdb": "oceanbase/seekdb"
}
}
}
...@@ -204,6 +204,7 @@ ${{vec.db}} ...@@ -204,6 +204,7 @@ ${{vec.db}}
AGENT_SANDBOX_ENABLE_VOLUME: true AGENT_SANDBOX_ENABLE_VOLUME: true
AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000 AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000
AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token
AGENT_SANDBOX_VOLUME_MANAGER_MOUNT_PATH: /workspace
# ==================== 日志与监控 ==================== # ==================== 日志与监控 ====================
# 传递给 OTLP 收集器的服务名称 # 传递给 OTLP 收集器的服务名称
......
...@@ -65,6 +65,7 @@ SeekDB is a high-performance vector database based on MySQL protocol, fully comp ...@@ -65,6 +65,7 @@ SeekDB is a high-performance vector database based on MySQL protocol, fully comp
<Alert icon="🤖" context="success"> <Alert icon="🤖" context="success">
SeekDB uses MySQL protocol, fully compatible with OceanBase: SeekDB uses MySQL protocol, fully compatible with OceanBase:
- Supports 1536-dimensional vector retrieval - Supports 1536-dimensional vector retrieval
- Built-in HNSW index algorithm - Built-in HNSW index algorithm
- Batch insert and query optimization - Batch insert and query optimization
...@@ -124,7 +125,8 @@ bash <(curl -fsSL https://doc.fastgpt.cn/deploy/install.sh) ...@@ -124,7 +125,8 @@ bash <(curl -fsSL https://doc.fastgpt.cn/deploy/install.sh)
``` ```
#### Method 2: Manual Download #### Method 2: Manual Download
If your environment is non-*nix or can't access external networks, manually download `docker-compose.yml`.
If your environment is non-\*nix or can't access external networks, manually download `docker-compose.yml`.
1. Download the `docker-compose.yml` file: 1. Download the `docker-compose.yml` file:
...@@ -132,27 +134,29 @@ If your environment is non-*nix or can't access external networks, manually down ...@@ -132,27 +134,29 @@ If your environment is non-*nix or can't access external networks, manually down
<summary>Click to view docker-compose config file download links for different databases</summary> <summary>Click to view docker-compose config file download links for different databases</summary>
- **Pgvector** - **Pgvector**
- China mirror (Alibaba Cloud): [docker-compose.pg.yml](https://doc.fastgpt.cn/deploy/docker/cn/docker-compose.pg.yml) - China mirror (Alibaba Cloud): [docker-compose.pg.yml](https://doc.fastgpt.cn/deploy/docker/v4.14/cn/docker-compose.pg.yml)
- Global mirror (dockerhub, ghcr): [docker-compose.pg.yml](https://doc.fastgpt.cn/deploy/docker/global/docker-compose.pg.yml) - Global mirror (dockerhub, ghcr): [docker-compose.pg.yml](https://doc.fastgpt.cn/deploy/docker/v4.14/global/docker-compose.pg.yml)
- **Oceanbase** - **Oceanbase**
- China mirror (Alibaba Cloud): [docker-compose.oceanbase.yml](https://doc.fastgpt.cn/deploy/docker/cn/docker-compose.oceanbase.yml) - China mirror (Alibaba Cloud): [docker-compose.oceanbase.yml](https://doc.fastgpt.cn/deploy/docker/v4.14/cn/docker-compose.oceanbase.yml)
- Global mirror (dockerhub, ghcr): [docker-compose.oceanbase.yml](https://doc.fastgpt.cn/deploy/docker/global/docker-compose.oceanbase.yml) - Global mirror (dockerhub, ghcr): [docker-compose.oceanbase.yml](https://doc.fastgpt.cn/deploy/docker/v4.14/global/docker-compose.oceanbase.yml)
- **Milvus** - **Milvus**
- China mirror (Alibaba Cloud): [docker-compose.milvus.yml](https://doc.fastgpt.cn/deploy/docker/cn/docker-compose.milvus.yml) - China mirror (Alibaba Cloud): [docker-compose.milvus.yml](https://doc.fastgpt.cn/deploy/docker/v4.14/cn/docker-compose.milvus.yml)
- Global mirror (dockerhub, ghcr): [docker-compose.milvus.yml](https://doc.fastgpt.cn/deploy/docker/global/docker-compose.milvus.yml) - Global mirror (dockerhub, ghcr): [docker-compose.milvus.yml](https://doc.fastgpt.cn/deploy/docker/v4.14/global/docker-compose.milvus.yml)
- **Zilliz** - **Zilliz**
- China mirror (Alibaba Cloud): [docker-compose.zilliz.yml](https://doc.fastgpt.cn/deploy/docker/cn/docker-compose.zilliz.yml) - China mirror (Alibaba Cloud): [docker-compose.zilliz.yml](https://doc.fastgpt.cn/deploy/docker/v4.14/cn/docker-compose.zilliz.yml)
- Global mirror (dockerhub, ghcr): [docker-compose.zilliz.yml](https://doc.fastgpt.cn/deploy/docker/global/docker-compose.zilliz.yml) - Global mirror (dockerhub, ghcr): [docker-compose.zilliz.yml](https://doc.fastgpt.cn/deploy/docker/v4.14/global/docker-compose.zilliz.yml)
- **SeekDB** - **SeekDB**
- China mirror (Alibaba Cloud): [docker-compose.seekdb.yml](https://doc.fastgpt.cn/deploy/docker/cn/docker-compose.seekdb.yml) - China mirror (Alibaba Cloud): [docker-compose.seekdb.yml](https://doc.fastgpt.cn/deploy/docker/v4.14/cn/docker-compose.seekdb.yml)
- Global mirror (dockerhub, ghcr): [docker-compose.seekdb.yml](https://doc.fastgpt.cn/deploy/docker/global/docker-compose.seekdb.yml) - Global mirror (dockerhub, ghcr): [docker-compose.seekdb.yml](https://doc.fastgpt.cn/deploy/docker/v4.14/global/docker-compose.seekdb.yml)
2. Download the `config.json` file: 2. Download the `config.json` file:
- [config.json](https://doc.fastgpt.cn/deploy/config/config.json) - [config.json](https://doc.fastgpt.cn/deploy/config/config.json)
</details> </details>
Download config.json file: Download config.json file:
- [config.json](https://doc.fastgpt.cn/deploy/config/config.json) - [config.json](https://doc.fastgpt.cn/deploy/config/config.json)
### 2. Modify Environment Variables ### 2. Modify Environment Variables
...@@ -165,7 +169,7 @@ These ports must be accessible: ...@@ -165,7 +169,7 @@ These ports must be accessible:
1. Port 3000 (FastGPT main service) 1. Port 3000 (FastGPT main service)
2. Port 9000 (S3 service) 2. Port 9000 (S3 service)
1. Port 3005 (FastGPT SSE MCP server service) 3. Port 3005 (FastGPT SSE MCP server service)
### 4. Start Containers ### 4. Start Containers
...@@ -192,9 +196,9 @@ Each container restart automatically initializes the root user with password `12 ...@@ -192,9 +196,9 @@ Each container restart automatically initializes the root user with password `12
Starting from V4.14.0, the fastgpt-plugin image only provides the runtime environment without pre-installed system plugins. All FastGPT systems must manually install system plugins. Starting from V4.14.0, the fastgpt-plugin image only provides the runtime environment without pre-installed system plugins. All FastGPT systems must manually install system plugins.
* Install via the plugin marketplace — by default it fetches from the public FastGPT Marketplace. - Install via the plugin marketplace — by default it fetches from the public FastGPT Marketplace.
* If your FastGPT can't access the marketplace, visit [FastGPT Plugin Marketplace](https://marketplace.fastgpt.cn/), download .pkg files, and import them via file upload. - If your FastGPT can't access the marketplace, visit [FastGPT Plugin Marketplace](https://marketplace.fastgpt.cn/), download .pkg files, and import them via file upload.
* You can also sort tools, set default installations, and manage tags. - You can also sort tools, set default installations, and manage tags.
![alt text](../../../public/imgs/image-121.png) ![alt text](../../../public/imgs/image-121.png)
...@@ -206,7 +210,7 @@ Starting from V4.14.0, the fastgpt-plugin image only provides the runtime enviro ...@@ -206,7 +210,7 @@ Starting from V4.14.0, the fastgpt-plugin image only provides the runtime enviro
| ---------------------- | -------------------- | | ---------------------- | -------------------- |
| 0.6.x | >= 4.14.11 | | 0.6.x | >= 4.14.11 |
| 0.5.x | >= 4.14.6, < 4.14.11 | | 0.5.x | >= 4.14.6, < 4.14.11 |
| < 0.5.0 | < 4.14.6 | < 0.5.0 | < 4.14.6 |
### S3 Connection Issues ### S3 Connection Issues
......
...@@ -9,7 +9,7 @@ description: 'FastGPT V4.14.10 Release Notes' ...@@ -9,7 +9,7 @@ description: 'FastGPT V4.14.10 Release Notes'
The following configuration adjustments are for `docker compose` deployments. `sealos` commercial users can contact support for an online sandbox service solution. The following configuration adjustments are for `docker compose` deployments. `sealos` commercial users can contact support for an online sandbox service solution.
Open the [latest yml deployment file](https://github.com/labring/FastGPT/blob/main/deploy/docker/global/docker-compose.pg.yml) and add the following: Open the [latest yml deployment file](https://github.com/labring/FastGPT/blob/main/document/public/deploy/docker/v4.14/global/docker-compose.pg.yml) and add the following:
1. Add the `x-volume-manager-auth-token: &x-volume-manager-auth-token 'vmtoken'` variable configuration at the top of the file. 1. Add the `x-volume-manager-auth-token: &x-volume-manager-auth-token 'vmtoken'` variable configuration at the top of the file.
2. Add 3 new services: `opensandbox-server`, `volume-manager`, and `agent-sandbox-image`. 2. Add 3 new services: `opensandbox-server`, `volume-manager`, and `agent-sandbox-image`.
......
...@@ -9,7 +9,7 @@ description: 'FastGPT V4.14.10 更新说明' ...@@ -9,7 +9,7 @@ description: 'FastGPT V4.14.10 更新说明'
以下针对的是 `docker compose` 部署方案的配置调整,使用 `sealos` 的商业版用户,可私信支持人员,提供在线的沙盒服务方案。 以下针对的是 `docker compose` 部署方案的配置调整,使用 `sealos` 的商业版用户,可私信支持人员,提供在线的沙盒服务方案。
参考[最新 yml 部署文件](https://github.com/labring/FastGPT/blob/main/deploy/docker/cn/docker-compose.pg.yml),调整本地 yml 文件,加入以下内容: 参考[最新 yml 部署文件](https://github.com/labring/FastGPT/blob/main/document/public/deploy/docker/v4.14/cn/docker-compose.pg.yml),调整本地 yml 文件,加入以下内容:
1. 在文件顶部增加 `x-volume-manager-auth-token: &x-volume-manager-auth-token 'vmtoken'` 变量配置。 1. 在文件顶部增加 `x-volume-manager-auth-token: &x-volume-manager-auth-token 'vmtoken'` 变量配置。
2. 增加 5 组 services: `opensandbox-server` , `opensandbox-agent-sandbox-image` , `opensandbox-execd-image` , `opensandbox-egress-image` , `fastgpt-volume-manager` 2. 增加 5 组 services: `opensandbox-server` , `opensandbox-agent-sandbox-image` , `opensandbox-execd-image` , `opensandbox-egress-image` , `fastgpt-volume-manager`
......
...@@ -7,7 +7,7 @@ description: 'FastGPT V4.10.0 Update Notes' ...@@ -7,7 +7,7 @@ description: 'FastGPT V4.10.0 Update Notes'
### Docker Deployment ### Docker Deployment
- Refer to the latest [docker-compose.yml](https://github.com/labring/FastGPT/blob/main/deploy/docker/docker-compose-pgvector.yml) file to add the `fastgpt-plugin` and `minio` services. - Refer to the latest [docker-compose.yml](https://github.com/labring/FastGPT/blob/main/document/public/deploy/docker/main/global/docker-compose.pg.yml) file to add the `fastgpt-plugin` and `minio` services.
- Set the `fastgpt-plugin` environment variable `AUTH_TOKEN` to a sufficiently complex value. - Set the `fastgpt-plugin` environment variable `AUTH_TOKEN` to a sufficiently complex value.
- Set the `fastgpt-plugin` environment variable `MINIO_CUSTOM_ENDPOINT` to `http://ip:port` or a relevant domain name that is accessible to FastGPT users. - Set the `fastgpt-plugin` environment variable `MINIO_CUSTOM_ENDPOINT` to `http://ip:port` or a relevant domain name that is accessible to FastGPT users.
- Update the environment variables for the `fastgpt` and `fastgpt-pro` (commercial edition) containers: - Update the environment variables for the `fastgpt` and `fastgpt-pro` (commercial edition) containers:
...@@ -16,6 +16,7 @@ description: 'FastGPT V4.10.0 Update Notes' ...@@ -16,6 +16,7 @@ description: 'FastGPT V4.10.0 Update Notes'
PLUGIN_BASE_URL=http://fastgpt-plugin:3000 PLUGIN_BASE_URL=http://fastgpt-plugin:3000
PLUGIN_TOKEN=the AUTH_TOKEN value you just set PLUGIN_TOKEN=the AUTH_TOKEN value you just set
``` ```
- Update the `fastgpt` and `fastgpt-pro` image tags to: v4.10.0-fix - Update the `fastgpt` and `fastgpt-pro` image tags to: v4.10.0-fix
- Run `docker-compose up -d` to start/update all services. - Run `docker-compose up -d` to start/update all services.
......
...@@ -7,25 +7,26 @@ description: 'FastGPT V4.10.0 更新说明' ...@@ -7,25 +7,26 @@ description: 'FastGPT V4.10.0 更新说明'
### Docker 版本 ### Docker 版本
- 参考最新的[docker-compose.yml](https://github.com/labring/FastGPT/blob/main/deploy/docker/docker-compose-pgvector.yml)文件,加入`fastgpt-plugin`和`minio`服务。 - 参考最新的 [docker-compose.yml](https://github.com/labring/FastGPT/blob/main/document/public/deploy/docker/main/global/docker-compose.pg.yml) 文件,加入 `fastgpt-plugin` 和 `minio` 服务。
- 修改`fastgpt-plugin`环境变量`AUTH_TOKEN`为较复杂的值。 - 修改 `fastgpt-plugin` 环境变量 `AUTH_TOKEN` 为较复杂的值。
- 修改`fastgpt-plugin`环境变量`MINIO_CUSTOM_ENDPOINT`为`http://ip:port` 或相关域名,要求fastgpt 用户可访问。 - 修改 `fastgpt-plugin` 环境变量 `MINIO_CUSTOM_ENDPOINT` 为 `http://ip:port` 或相关域名,要求 fastgpt 用户可访问。
- 更新`fastgpt`和`fastgpt-pro`(商业版)容器的环境变量: - 更新 `fastgpt` 和 `fastgpt-pro` (商业版)容器的环境变量:
``` ```
PLUGIN_BASE_URL=http://fastgpt-plugin:3000 PLUGIN_BASE_URL=http://fastgpt-plugin:3000
PLUGIN_TOKEN=刚修改的 AUTH_TOKEN 值 PLUGIN_TOKEN=刚修改的 AUTH_TOKEN 值
``` ```
- 更新`fastgpt`和`fastgpt-pro`镜像 tag: v4.10.0-fix
- `docker-compose up -d`启动/更新所有服务。 - 更新 `fastgpt` 和 `fastgpt-pro` 镜像 tag: v4.10.0-fix
- `docker-compose up -d` 启动/更新所有服务。
### Sealos 版本 ### Sealos 版本
- 在 Sealos 桌面的`对象存储`中,新建一个存储桶,设置`publicRead`权限。并获取相关密钥: - 在 Sealos 桌面的 `对象存储` 中,新建一个存储桶,设置 `publicRead` 权限。并获取相关密钥:
![](../../../../public/imgs/sealos-s3.png) ![](../../../../public/imgs/sealos-s3.png)
- 部署`fastgpt-plugin`服务,镜像`registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-plugin:v0.1.0`,内网暴露端口3000,无需公网访问,设置环境变量: - 部署 `fastgpt-plugin` 服务,镜像 `registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-plugin:v0.1.0`,内网暴露端口 3000,无需公网访问,设置环境变量:
``` ```
AUTH_TOKEN=鉴权 token AUTH_TOKEN=鉴权 token
...@@ -43,7 +44,7 @@ MINIO_SECRET_KEY=Secret Key ...@@ -43,7 +44,7 @@ MINIO_SECRET_KEY=Secret Key
MINIO_BUCKET=存储桶名 MINIO_BUCKET=存储桶名
``` ```
- 更新`fastgpt`和`fastgpt-pro`(商业版)容器的环境变量以及镜像 tag: v4.10.0-fix - 更新 `fastgpt` 和 `fastgpt-pro` (商业版)容器的环境变量以及镜像 tag: v4.10.0-fix
``` ```
PLUGIN_BASE_URL=fastgpt-plugin 服务的内网地址 PLUGIN_BASE_URL=fastgpt-plugin 服务的内网地址
......
...@@ -16,7 +16,7 @@ SANDBOX_URL=internal-network-address ...@@ -16,7 +16,7 @@ SANDBOX_URL=internal-network-address
## Docker Deployment ## Docker Deployment
You can pull the latest [docker-compose.yml](https://github.com/labring/FastGPT/blob/main/deploy/docker/docker-compose.yml) file for reference. You can pull the latest [docker-compose.yml](https://github.com/labring/FastGPT/blob/main/document/public/deploy/docker/main/global/docker-compose.pg.yml) file for reference.
1. Add a new `sandbox` container. 1. Add a new `sandbox` container.
2. Add the `SANDBOX_URL` environment variable to the fastgpt and fastgpt-pro (commercial edition) containers. 2. Add the `SANDBOX_URL` environment variable to the fastgpt and fastgpt-pro (commercial edition) containers.
......
...@@ -6,7 +6,7 @@ description: FastGPT V4.8.2 更新说明 ...@@ -6,7 +6,7 @@ description: FastGPT V4.8.2 更新说明
## Sealos 升级说明 ## Sealos 升级说明
1. 在应用管理中新建一个应用,镜像为:registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-sandbox:v4.8.1 1. 在应用管理中新建一个应用,镜像为:registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-sandbox:v4.8.1
2. 无需外网访问地址,端口号为3000 2. 无需外网访问地址,端口号为 3000
3. 部署完后,复制应用的内网地址 3. 部署完后,复制应用的内网地址
4. 点击变更`FastGPT - 修改环境变量,增加下面的环境变量即可 4. 点击变更`FastGPT - 修改环境变量,增加下面的环境变量即可
...@@ -16,7 +16,7 @@ SANDBOX_URL=内网地址 ...@@ -16,7 +16,7 @@ SANDBOX_URL=内网地址
## Docker 部署 ## Docker 部署
可以拉取最新 [docker-compose.yml](https://github.com/labring/FastGPT/blob/main/deploy/docker/docker-compose.yml) 文件参考 可以拉取最新 [docker-compose.yml](https://github.com/labring/FastGPT/blob/main/document/public/deploy/docker/main/global/docker-compose.pg.yml) 文件参考
1. 新增一个容器 `sandbox` 1. 新增一个容器 `sandbox`
2. fastgpt 和 fastgpt-pro(商业版) 容器新增环境变量: `SANDBOX_URL` 2. fastgpt 和 fastgpt-pro(商业版) 容器新增环境变量: `SANDBOX_URL`
...@@ -24,7 +24,7 @@ SANDBOX_URL=内网地址 ...@@ -24,7 +24,7 @@ SANDBOX_URL=内网地址
## V4.8.2 更新说明 ## V4.8.2 更新说明
1. 新增 - js代码运行节点(更完整的type提醒,后续继续完善) 1. 新增 - js 代码运行节点(更完整的 type 提醒,后续继续完善)
2. 新增 - 内容提取节点支持数据类型选择 2. 新增 - 内容提取节点支持数据类型选择
3. 修复 - 新增的站点同步无法使用 3. 修复 - 新增的站点同步无法使用
4. 修复 - 定时任务无法输入内容 4. 修复 - 定时任务无法输入内容
...@@ -11,7 +11,7 @@ description: FastGPT V4.8.3 Release Notes ...@@ -11,7 +11,7 @@ description: FastGPT V4.8.3 Release Notes
## V4.8.3 Release Notes ## V4.8.3 Release Notes
1. New - Milvus database support. See the latest [docker-compose-milvus.yml](https://github.com/labring/FastGPT/blob/main/deploy/docker/docker-compose-milvus.yml) for reference. 1. New - Milvus database support. See the latest [docker-compose-milvus.yml](https://github.com/labring/FastGPT/blob/main/document/public/deploy/docker/main/global/docker-compose.milvus.yml) for reference.
2. New - Added logging for empty answers in the chat API to help troubleshoot model issues. 2. New - Added logging for empty answers in the chat API to help troubleshoot model issues.
3. New - If/Else conditional node now supports regex for string matching. 3. New - If/Else conditional node now supports regex for string matching.
4. New - Code execution node now supports console.log for debug output. 4. New - Code execution node now supports console.log for debug output.
......
...@@ -11,8 +11,8 @@ description: FastGPT V4.8.3 更新说明 ...@@ -11,8 +11,8 @@ description: FastGPT V4.8.3 更新说明
## V4.8.3 更新说明 ## V4.8.3 更新说明
1. 新增 - 支持 Milvus 数据库, 可参考最新的 [docker-compose-milvus.yml](https://github.com/labring/FastGPT/blob/main/deploy/docker/docker-compose-milvus.yml). 1. 新增 - 支持 Milvus 数据库,可参考最新的 [docker-compose-milvus.yml](https://github.com/labring/FastGPT/blob/main/document/public/deploy/docker/main/global/docker-compose.milvus.yml) .
2. 新增 - 给 chat 接口 empty answer 增加 log,便于排查模型问题。 2. 新增 - 给 chat 接口 empty answer 增加 log,便于排查模型问题。
3. 新增 - ifelse判断器,字符串支持正则。 3. 新增 - ifelse 判断器,字符串支持正则。
4. 新增 - 代码运行支持 console.log 输出调试。 4. 新增 - 代码运行支持 console.log 输出调试。
5. 修复 - 变量更新在 Debug 模式下出错。 5. 修复 - 变量更新在 Debug 模式下出错。
...@@ -12,7 +12,7 @@ description: FastGPT V4.9.0 Release Notes ...@@ -12,7 +12,7 @@ description: FastGPT V4.9.0 Release Notes
- Update FastGPT image tag: v4.9.0 - Update FastGPT image tag: v4.9.0
- Update FastGPT Pro image tag: v4.9.0 - Update FastGPT Pro image tag: v4.9.0
- Sandbox image: no update required - Sandbox image: no update required
- Update PG container to v0.8.0-pg15. See the [latest yml](https://raw.githubusercontent.com/labring/FastGPT/main/deploy/docker/docker-compose-pgvector.yml) - Update PG container to v0.8.0-pg15. See the [latest yml](https://raw.githubusercontent.com/labring/FastGPT/main/document/public/deploy/docker/main/global/docker-compose.pg.yml)
### 3. Replace OneAPI (Optional) ### 3. Replace OneAPI (Optional)
...@@ -20,7 +20,7 @@ Follow this step if you want to replace OneAPI with [AI Proxy](https://github.co ...@@ -20,7 +20,7 @@ Follow this step if you want to replace OneAPI with [AI Proxy](https://github.co
#### 1. Modify the yml File #### 1. Modify the yml File
Refer to the [latest yml](https://raw.githubusercontent.com/labring/FastGPT/main/deploy/docker/docker-compose-pgvector.yml) file. OneAPI has been removed and AI Proxy configuration has been added, including one service and one PgSQL database. Append the `aiproxy` configuration after the OneAPI configuration (don't remove OneAPI yet — the initialization process will automatically sync OneAPI's configuration). Refer to the [latest yml](https://raw.githubusercontent.com/labring/FastGPT/main/document/public/deploy/docker/main/global/docker-compose.pg.yml) file. OneAPI has been removed and AI Proxy configuration has been added, including one service and one PgSQL database. Append the `aiproxy` configuration after the OneAPI configuration (don't remove OneAPI yet — the initialization process will automatically sync OneAPI's configuration).
<details> <details>
<summary>AI Proxy Yml Configuration</summary> <summary>AI Proxy Yml Configuration</summary>
......
...@@ -12,7 +12,7 @@ description: FastGPT V4.9.0 更新说明 ...@@ -12,7 +12,7 @@ description: FastGPT V4.9.0 更新说明
- 更新 FastGPT 镜像 tag: v4.9.0 - 更新 FastGPT 镜像 tag: v4.9.0
- 更新 FastGPT 商业版镜像 tag: v4.9.0 - 更新 FastGPT 商业版镜像 tag: v4.9.0
- Sandbox 镜像,可以不更新 - Sandbox 镜像,可以不更新
- 更新 PG 容器为 v0.8.0-pg15, 可以查看[最新的 yml](https://raw.githubusercontent.com/labring/FastGPT/main/deploy/docker/docker-compose-pgvector.yml) - 更新 PG 容器为 v0.8.0-pg15, 可以查看[最新的 yml](https://raw.githubusercontent.com/labring/FastGPT/main/document/public/deploy/docker/main/global/docker-compose.pg.yml)
### 3. 替换 OneAPI(可选) ### 3. 替换 OneAPI(可选)
...@@ -20,7 +20,7 @@ description: FastGPT V4.9.0 更新说明 ...@@ -20,7 +20,7 @@ description: FastGPT V4.9.0 更新说明
#### 1. 修改 yml 文件 #### 1. 修改 yml 文件
参考[最新的 yml](https://raw.githubusercontent.com/labring/FastGPT/main/deploy/docker/docker-compose-pgvector.yml) 文件。里面已移除 OneAPI 并添加了 AIProxy配置。包含一个服务和一个 PgSQL 数据库。将 `aiproxy` 的配置`追加`到 OneAPI 的配置后面(先不要删除 OneAPI,有一个初始化会自动同步 OneAPI 的配置) 参考[最新的 yml](https://raw.githubusercontent.com/labring/FastGPT/main/document/public/deploy/docker/main/global/docker-compose.pg.yml) 文件。里面已移除 OneAPI 并添加了 AIProxy 配置。包含一个服务和一个 PgSQL 数据库。将 `aiproxy` 的配置 `追加` 到 OneAPI 的配置后面(先不要删除 OneAPI,有一个初始化会自动同步 OneAPI 的配置)
<details> <details>
<summary>AI Proxy Yml 配置</summary> <summary>AI Proxy Yml 配置</summary>
...@@ -92,7 +92,7 @@ description: FastGPT V4.9.0 更新说明 ...@@ -92,7 +92,7 @@ description: FastGPT V4.9.0 更新说明
`docker-compose down` 停止服务,然后 `docker-compose up -d` 启动服务,此时会追加 `aiproxy` 服务,并修改 FastGPT 的配置。 `docker-compose down` 停止服务,然后 `docker-compose up -d` 启动服务,此时会追加 `aiproxy` 服务,并修改 FastGPT 的配置。
#### 4. 执行OneAPI迁移AI proxy脚本 #### 4. 执行 OneAPI 迁移 AI proxy 脚本
- 可联网方案: - 可联网方案:
...@@ -111,7 +111,7 @@ curl --location --request POST 'http://localhost:3000/api/channels/import/oneapi ...@@ -111,7 +111,7 @@ curl --location --request POST 'http://localhost:3000/api/channels/import/oneapi
# 返回 {"data":[],"success":true} 代表成功 # 返回 {"data":[],"success":true} 代表成功
``` ```
- 无法联网时,可打开`aiproxy`的外网暴露端口,然后在本地执行脚本。 - 无法联网时,可打开 `aiproxy` 的外网暴露端口,然后在本地执行脚本。
aiProxy 暴露端口:3003:3000,修改后重新 `docker-compose up -d` 启动服务。 aiProxy 暴露端口:3003:3000,修改后重新 `docker-compose up -d` 启动服务。
...@@ -128,9 +128,9 @@ curl --location --request POST 'http://localhost:3003/api/channels/import/oneapi ...@@ -128,9 +128,9 @@ curl --location --request POST 'http://localhost:3003/api/channels/import/oneapi
- 如果不熟悉 docker 操作,建议不要走脚本迁移,直接删除 OneAPI 所有内容,然后手动重新添加渠道。 - 如果不熟悉 docker 操作,建议不要走脚本迁移,直接删除 OneAPI 所有内容,然后手动重新添加渠道。
#### 5. 进入 FastGPT 检查`AI Proxy` 服务是否正常启动。 #### 5. 进入 FastGPT 检查 `AI Proxy` 服务是否正常启动。
登录 root 账号后,在`账号-模型提供商`页面,可以看到多出了`模型渠道`和`调用日志`两个选项,打开模型渠道,可以看到之前 OneAPI 的渠道,说明迁移完成,此时可以手动再检查下渠道是否正常。 登录 root 账号后,在 `账号-模型提供商` 页面,可以看到多出了 `模型渠道` 和 `调用日志` 两个选项,打开模型渠道,可以看到之前 OneAPI 的渠道,说明迁移完成,此时可以手动再检查下渠道是否正常。
#### 6. 删除 OneAPI 服务 #### 6. 删除 OneAPI 服务
...@@ -144,7 +144,7 @@ docker-compose up -d ...@@ -144,7 +144,7 @@ docker-compose up -d
### 4. 运行 FastGPT 升级脚本 ### 4. 运行 FastGPT 升级脚本
从任意终端,发起 1 个 HTTP 请求。其中 `{{rootkey}}` 替换成环境变量里的 `rootkey`;`{{host}}` 替换成**FastGPT 域名**。 从任意终端,发起 1 个 HTTP 请求。其中 `{{rootkey}}` 替换成环境变量里的 `rootkey`;`{{host}}` 替换成 **FastGPT 域名**。
```bash ```bash
curl --location --request POST 'https://{{host}}/api/admin/initv490' \ curl --location --request POST 'https://{{host}}/api/admin/initv490' \
...@@ -163,11 +163,11 @@ curl --location --request POST 'https://{{host}}/api/admin/initv490' \ ...@@ -163,11 +163,11 @@ curl --location --request POST 'https://{{host}}/api/admin/initv490' \
1. 弃用 - 之前私有化部署的自定义文件解析方案,请同步更新到最新的配置方案。[点击查看 PDF 增强解析配置](../../config/json.mdx#使用-doc2x-解析-pdf-文件) 1. 弃用 - 之前私有化部署的自定义文件解析方案,请同步更新到最新的配置方案。[点击查看 PDF 增强解析配置](../../config/json.mdx#使用-doc2x-解析-pdf-文件)
2. 弃用 - 弃用旧版本地文件上传 API:/api/core/dataset/collection/create/file(以前仅商业版可用的 API,该接口已放切换成:/api/core/dataset/collection/create/localFile) 2. 弃用 - 弃用旧版本地文件上传 API:/api/core/dataset/collection/create/file(以前仅商业版可用的 API,该接口已放切换成:/api/core/dataset/collection/create/localFile)
3. 停止维护,即将弃用 - 外部文件库相关 API,可通过 API 文件库替代。 3. 停止维护,即将弃用 - 外部文件库相关 API,可通过 API 文件库替代。
4. API更新 - 上传文件至知识库、创建连接集合、API 文件库、推送分块数据等带有 `trainingType` 字段的接口,`trainingType`字段未来仅支持`chunk`和`QA`两种模式。增强索引模式将设置单独字段:`autoIndexes`,目前仍有适配旧版`trainingType=auto`代码,但请尽快变更成新接口类型。具体可见:[知识库 OpenAPI 文档](../../../openapi/dataset.mdx) 4. API 更新 - 上传文件至知识库、创建连接集合、API 文件库、推送分块数据等带有 `trainingType` 字段的接口,`trainingType` 字段未来仅支持 `chunk` 和 `QA` 两种模式。增强索引模式将设置单独字段:`autoIndexes`,目前仍有适配旧版 `trainingType=auto` 代码,但请尽快变更成新接口类型。具体可见:[知识库 OpenAPI 文档](../../../openapi/dataset.mdx)
## 🚀 新增内容 ## 🚀 新增内容
1. PDF增强解析交互添加到页面上。同时内嵌 Doc2x 服务,可直接使用 Doc2x 服务解析 PDF 文件。 1. PDF 增强解析交互添加到页面上。同时内嵌 Doc2x 服务,可直接使用 Doc2x 服务解析 PDF 文件。
2. 图片自动标注,同时修改知识库文件上传部分数据逻辑和交互。 2. 图片自动标注,同时修改知识库文件上传部分数据逻辑和交互。
3. pg vector 插件升级 0.8.0 版本,引入迭代搜索,减少部分数据无法被检索的情况。 3. pg vector 插件升级 0.8.0 版本,引入迭代搜索,减少部分数据无法被检索的情况。
4. 新增 qwen-qwq 系列模型配置。 4. 新增 qwen-qwq 系列模型配置。
......
...@@ -278,7 +278,7 @@ ...@@ -278,7 +278,7 @@
"content/self-host/upgrading/4-14/4149.en.mdx": "2026-04-26T21:08:47+08:00", "content/self-host/upgrading/4-14/4149.en.mdx": "2026-04-26T21:08:47+08:00",
"content/self-host/upgrading/4-14/4149.mdx": "2026-04-26T21:08:47+08:00", "content/self-host/upgrading/4-14/4149.mdx": "2026-04-26T21:08:47+08:00",
"content/self-host/upgrading/4-15/4150.mdx": "2026-05-20T17:52:26+08:00", "content/self-host/upgrading/4-15/4150.mdx": "2026-05-20T17:52:26+08:00",
"content/self-host/upgrading/4-15/41502.mdx": "2026-05-23T22:47:02+08:00", "content/self-host/upgrading/4-15/41502.mdx": "2026-05-23T23:33:02+08:00",
"content/self-host/upgrading/outdated/40.en.mdx": "2026-04-26T21:08:47+08:00", "content/self-host/upgrading/outdated/40.en.mdx": "2026-04-26T21:08:47+08:00",
"content/self-host/upgrading/outdated/40.mdx": "2026-04-26T21:08:47+08:00", "content/self-host/upgrading/outdated/40.mdx": "2026-04-26T21:08:47+08:00",
"content/self-host/upgrading/outdated/41.en.mdx": "2026-04-26T21:08:47+08:00", "content/self-host/upgrading/outdated/41.en.mdx": "2026-04-26T21:08:47+08:00",
......
...@@ -11,8 +11,6 @@ x-system-key: &x-system-key 'fastgpt-xxx' ...@@ -11,8 +11,6 @@ x-system-key: &x-system-key 'fastgpt-xxx'
x-plugin-auth-token: &x-plugin-auth-token 'token' x-plugin-auth-token: &x-plugin-auth-token 'token'
# code sandbox token # code sandbox token
x-code-sandbox-token: &x-code-sandbox-token 'codesandbox' x-code-sandbox-token: &x-code-sandbox-token 'codesandbox'
# volume manager auth token
x-volume-manager-auth-token: &x-volume-manager-auth-token 'vmtoken'
# aiproxy token # aiproxy token
x-aiproxy-token: &x-aiproxy-token 'token' x-aiproxy-token: &x-aiproxy-token 'token'
# 数据库连接相关配置 # 数据库连接相关配置
...@@ -44,7 +42,6 @@ x-vec-config: &x-vec-config ...@@ -44,7 +42,6 @@ x-vec-config: &x-vec-config
MILVUS_ADDRESS: http://fastgpt-vector:19530 MILVUS_ADDRESS: http://fastgpt-vector:19530
MILVUS_TOKEN: none MILVUS_TOKEN: none
services: services:
# Vector DB # Vector DB
fastgpt-milvus-minio: fastgpt-milvus-minio:
...@@ -104,7 +101,6 @@ services: ...@@ -104,7 +101,6 @@ services:
depends_on: depends_on:
- 'fastgpt-milvus-etcd' - 'fastgpt-milvus-etcd'
- 'fastgpt-milvus-minio' - 'fastgpt-milvus-minio'
fastgpt-mongo: fastgpt-mongo:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29
container_name: fastgpt-mongo container_name: fastgpt-mongo
...@@ -192,14 +188,13 @@ services: ...@@ -192,14 +188,13 @@ services:
fastgpt-app: fastgpt-app:
container_name: fastgpt-app container_name: fastgpt-app
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.15.0-beta1
ports: ports:
- 3000:3000 - 3000:3000
networks: networks:
- data - data
- app - app
- codesandbox - codesandbox
- opensandbox
- aiproxy - aiproxy
depends_on: depends_on:
fastgpt-mongo: fastgpt-mongo:
...@@ -250,20 +245,6 @@ services: ...@@ -250,20 +245,6 @@ services:
# AI Proxy 的 Admin Token,与 AI Proxy 中的环境变量 ADMIN_KEY # AI Proxy 的 Admin Token,与 AI Proxy 中的环境变量 ADMIN_KEY
AIPROXY_API_TOKEN: *x-aiproxy-token AIPROXY_API_TOKEN: *x-aiproxy-token
# ==================== Agent sandbox 配置 ====================
AGENT_SANDBOX_PROVIDER: opensandbox
# OpenSandbox 配置(PROVIDER: opensandbox 时生效)
AGENT_SANDBOX_OPENSANDBOX_BASEURL: http://opensandbox-server:8090
AGENT_SANDBOX_OPENSANDBOX_API_KEY:
AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker
AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox
AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1
AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true
# Volume 持久化配置(opensandbox provider 下可选)
AGENT_SANDBOX_ENABLE_VOLUME: true
AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000
AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token
# ==================== 日志与监控 ==================== # ==================== 日志与监控 ====================
# 传递给 OTLP 收集器的服务名称 # 传递给 OTLP 收集器的服务名称
LOG_OTEL_SERVICE_NAME: fastgpt-client LOG_OTEL_SERVICE_NAME: fastgpt-client
...@@ -271,7 +252,7 @@ services: ...@@ -271,7 +252,7 @@ services:
- ./config.json:/app/data/config.json - ./config.json:/app/data/config.json
fastgpt-code-sandbox: fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox container_name: fastgpt-code-sandbox
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.15.0-beta1
networks: networks:
- codesandbox - codesandbox
restart: always restart: always
...@@ -320,7 +301,7 @@ services: ...@@ -320,7 +301,7 @@ services:
retries: 3 retries: 3
fastgpt-mcp-server: fastgpt-mcp-server:
container_name: fastgpt-mcp-server container_name: fastgpt-mcp-server
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.15.0-beta1
networks: networks:
- app - app
ports: ports:
...@@ -356,79 +337,9 @@ services: ...@@ -356,79 +337,9 @@ services:
timeout: 20s timeout: 20s
retries: 3 retries: 3
# 沙盒控制器:管理 Docker 容器的创建/执行/停止/删除
# runtime=docker 模式需要挂载 Docker socket
# 配置 docker.host_ip 为宿主机 LAN IP(容器内访问宿主机服务用)
opensandbox-server:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-server:v0.1.9
container_name: fastgpt-opensandbox-server
restart: always
networks:
- opensandbox
extra_hosts:
- 'host.docker.internal:host-gateway'
volumes:
- /var/run/docker.sock:/var/run/docker.sock # Docker 模式必须挂载,需检查是否与主机的 socket 文件一致
configs:
- source: opensandbox-config
target: /etc/opensandbox/config.toml
environment:
SANDBOX_CONFIG_PATH: /etc/opensandbox/config.toml
healthcheck:
test:
[
'CMD',
'python',
'-c',
'import urllib.request,sys; sys.exit(0 if urllib.request.urlopen("http://localhost:8090/health",timeout=3).status==200 else 1)'
]
interval: 10s
timeout: 5s
retries: 5
# Pre-pull only: not started by `docker compose up` (uses profile `prepull`).
opensandbox-agent-sandbox-image:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox:v0.1
profiles:
- prepull
opensandbox-execd-image:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-execd:v1.0.7
profiles:
- prepull
opensandbox-egress-image:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-egress:v1.0.3
profiles:
- prepull
# 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC
fastgpt-volume-manager:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-volume-manager:v0.1
container_name: fastgpt-volume-manager
restart: always
networks:
- opensandbox
volumes:
- /var/run/docker.sock:/var/run/docker.sock # Docker 模式必须挂载,需检查是否与主机的 socket 文件一致
environment:
PORT: 3000
VM_RUNTIME: docker
VM_AUTH_TOKEN: *x-volume-manager-auth-token # 对应 AGENT_SANDBOX_VOLUME_MANAGER_TOKEN
VM_VOLUME_NAME_PREFIX: fastgpt-session # volume 名称前缀
VM_LOG_LEVEL: info
VM_DOCKER_API_VERSION: v1.44
healthcheck:
test:
[
'CMD',
'bun',
'-e',
"fetch('http://localhost:3000/health').then((res) => { if (!res.ok) throw new Error(String(res.status)); })"
]
interval: 10s
timeout: 5s
retries: 5
# AI Proxy # AI Proxy
fastgpt-aiproxy: fastgpt-aiproxy:
image: registry.cn-hangzhou.aliyuncs.com/labring/aiproxy:v0.5.6 image: registry.cn-hangzhou.aliyuncs.com/labring/aiproxy:v0.5.8
container_name: fastgpt-aiproxy container_name: fastgpt-aiproxy
restart: unless-stopped restart: unless-stopped
depends_on: depends_on:
...@@ -479,8 +390,6 @@ networks: ...@@ -479,8 +390,6 @@ networks:
name: fastgpt_app name: fastgpt_app
codesandbox: codesandbox:
name: fastgpt_codesandbox name: fastgpt_codesandbox
opensandbox:
name: fastgpt_opensandbox
aiproxy: aiproxy:
name: fastgpt_aiproxy name: fastgpt_aiproxy
...@@ -497,31 +406,3 @@ volumes: ...@@ -497,31 +406,3 @@ volumes:
fastgpt-seekdb-data: fastgpt-seekdb-data:
fastgpt-seekdb-config: fastgpt-seekdb-config:
fastgpt-aiproxy_pg: fastgpt-aiproxy_pg:
configs:
opensandbox-config:
content: |
[server]
host = "0.0.0.0"
port = 8090
log_level = "INFO"
[runtime]
type = "docker"
execd_image = "registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-execd:v1.0.7"
[egress]
image = "registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-egress:v1.0.3"
[docker]
network_mode = "fastgpt_opensandbox"
# When server runs in a container, set host_ip to the host's IP or hostname so bridge-mode endpoints are reachable (e.g. host.docker.internal or the host LAN IP).
# It's required when server deployed with docker container under host.
host_ip = "host.docker.internal"
drop_capabilities = ["AUDIT_WRITE", "MKNOD", "NET_ADMIN", "NET_RAW", "SYS_ADMIN", "SYS_MODULE", "SYS_PTRACE", "SYS_TIME", "SYS_TTY_CONFIG"]
no_new_privileges = true
pids_limit = 512
[ingress]
mode = "direct"
...@@ -11,8 +11,6 @@ x-system-key: &x-system-key 'fastgpt-xxx' ...@@ -11,8 +11,6 @@ x-system-key: &x-system-key 'fastgpt-xxx'
x-plugin-auth-token: &x-plugin-auth-token 'token' x-plugin-auth-token: &x-plugin-auth-token 'token'
# code sandbox token # code sandbox token
x-code-sandbox-token: &x-code-sandbox-token 'codesandbox' x-code-sandbox-token: &x-code-sandbox-token 'codesandbox'
# volume manager auth token
x-volume-manager-auth-token: &x-volume-manager-auth-token 'vmtoken'
# aiproxy token # aiproxy token
x-aiproxy-token: &x-aiproxy-token 'token' x-aiproxy-token: &x-aiproxy-token 'token'
# 数据库连接相关配置 # 数据库连接相关配置
...@@ -43,7 +41,6 @@ x-log-config: &x-log-config ...@@ -43,7 +41,6 @@ x-log-config: &x-log-config
x-vec-config: &x-vec-config x-vec-config: &x-vec-config
OCEANBASE_URL: mysql://root%40tenantname:tenantpassword@fastgpt-vector:2881/mysql OCEANBASE_URL: mysql://root%40tenantname:tenantpassword@fastgpt-vector:2881/mysql
services: services:
# Vector DB # Vector DB
fastgpt-vector: fastgpt-vector:
...@@ -82,7 +79,6 @@ services: ...@@ -82,7 +79,6 @@ services:
timeout: 10s timeout: 10s
retries: 1000 retries: 1000
start_period: 10s start_period: 10s
fastgpt-mongo: fastgpt-mongo:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29
container_name: fastgpt-mongo container_name: fastgpt-mongo
...@@ -170,14 +166,13 @@ services: ...@@ -170,14 +166,13 @@ services:
fastgpt-app: fastgpt-app:
container_name: fastgpt-app container_name: fastgpt-app
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.15.0-beta1
ports: ports:
- 3000:3000 - 3000:3000
networks: networks:
- data - data
- app - app
- codesandbox - codesandbox
- opensandbox
- aiproxy - aiproxy
depends_on: depends_on:
fastgpt-mongo: fastgpt-mongo:
...@@ -228,20 +223,6 @@ services: ...@@ -228,20 +223,6 @@ services:
# AI Proxy 的 Admin Token,与 AI Proxy 中的环境变量 ADMIN_KEY # AI Proxy 的 Admin Token,与 AI Proxy 中的环境变量 ADMIN_KEY
AIPROXY_API_TOKEN: *x-aiproxy-token AIPROXY_API_TOKEN: *x-aiproxy-token
# ==================== Agent sandbox 配置 ====================
AGENT_SANDBOX_PROVIDER: opensandbox
# OpenSandbox 配置(PROVIDER: opensandbox 时生效)
AGENT_SANDBOX_OPENSANDBOX_BASEURL: http://opensandbox-server:8090
AGENT_SANDBOX_OPENSANDBOX_API_KEY:
AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker
AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox
AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1
AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true
# Volume 持久化配置(opensandbox provider 下可选)
AGENT_SANDBOX_ENABLE_VOLUME: true
AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000
AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token
# ==================== 日志与监控 ==================== # ==================== 日志与监控 ====================
# 传递给 OTLP 收集器的服务名称 # 传递给 OTLP 收集器的服务名称
LOG_OTEL_SERVICE_NAME: fastgpt-client LOG_OTEL_SERVICE_NAME: fastgpt-client
...@@ -249,7 +230,7 @@ services: ...@@ -249,7 +230,7 @@ services:
- ./config.json:/app/data/config.json - ./config.json:/app/data/config.json
fastgpt-code-sandbox: fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox container_name: fastgpt-code-sandbox
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.15.0-beta1
networks: networks:
- codesandbox - codesandbox
restart: always restart: always
...@@ -298,7 +279,7 @@ services: ...@@ -298,7 +279,7 @@ services:
retries: 3 retries: 3
fastgpt-mcp-server: fastgpt-mcp-server:
container_name: fastgpt-mcp-server container_name: fastgpt-mcp-server
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.15.0-beta1
networks: networks:
- app - app
ports: ports:
...@@ -334,79 +315,9 @@ services: ...@@ -334,79 +315,9 @@ services:
timeout: 20s timeout: 20s
retries: 3 retries: 3
# 沙盒控制器:管理 Docker 容器的创建/执行/停止/删除
# runtime=docker 模式需要挂载 Docker socket
# 配置 docker.host_ip 为宿主机 LAN IP(容器内访问宿主机服务用)
opensandbox-server:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-server:v0.1.9
container_name: fastgpt-opensandbox-server
restart: always
networks:
- opensandbox
extra_hosts:
- 'host.docker.internal:host-gateway'
volumes:
- /var/run/docker.sock:/var/run/docker.sock # Docker 模式必须挂载,需检查是否与主机的 socket 文件一致
configs:
- source: opensandbox-config
target: /etc/opensandbox/config.toml
environment:
SANDBOX_CONFIG_PATH: /etc/opensandbox/config.toml
healthcheck:
test:
[
'CMD',
'python',
'-c',
'import urllib.request,sys; sys.exit(0 if urllib.request.urlopen("http://localhost:8090/health",timeout=3).status==200 else 1)'
]
interval: 10s
timeout: 5s
retries: 5
# Pre-pull only: not started by `docker compose up` (uses profile `prepull`).
opensandbox-agent-sandbox-image:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox:v0.1
profiles:
- prepull
opensandbox-execd-image:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-execd:v1.0.7
profiles:
- prepull
opensandbox-egress-image:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-egress:v1.0.3
profiles:
- prepull
# 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC
fastgpt-volume-manager:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-volume-manager:v0.1
container_name: fastgpt-volume-manager
restart: always
networks:
- opensandbox
volumes:
- /var/run/docker.sock:/var/run/docker.sock # Docker 模式必须挂载,需检查是否与主机的 socket 文件一致
environment:
PORT: 3000
VM_RUNTIME: docker
VM_AUTH_TOKEN: *x-volume-manager-auth-token # 对应 AGENT_SANDBOX_VOLUME_MANAGER_TOKEN
VM_VOLUME_NAME_PREFIX: fastgpt-session # volume 名称前缀
VM_LOG_LEVEL: info
VM_DOCKER_API_VERSION: v1.44
healthcheck:
test:
[
'CMD',
'bun',
'-e',
"fetch('http://localhost:3000/health').then((res) => { if (!res.ok) throw new Error(String(res.status)); })"
]
interval: 10s
timeout: 5s
retries: 5
# AI Proxy # AI Proxy
fastgpt-aiproxy: fastgpt-aiproxy:
image: registry.cn-hangzhou.aliyuncs.com/labring/aiproxy:v0.5.6 image: registry.cn-hangzhou.aliyuncs.com/labring/aiproxy:v0.5.8
container_name: fastgpt-aiproxy container_name: fastgpt-aiproxy
restart: unless-stopped restart: unless-stopped
depends_on: depends_on:
...@@ -457,8 +368,6 @@ networks: ...@@ -457,8 +368,6 @@ networks:
name: fastgpt_app name: fastgpt_app
codesandbox: codesandbox:
name: fastgpt_codesandbox name: fastgpt_codesandbox
opensandbox:
name: fastgpt_opensandbox
aiproxy: aiproxy:
name: fastgpt_aiproxy name: fastgpt_aiproxy
...@@ -477,33 +386,7 @@ volumes: ...@@ -477,33 +386,7 @@ volumes:
fastgpt-aiproxy_pg: fastgpt-aiproxy_pg:
configs: configs:
opensandbox-config:
content: |
[server]
host = "0.0.0.0"
port = 8090
log_level = "INFO"
[runtime]
type = "docker"
execd_image = "registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-execd:v1.0.7"
[egress]
image = "registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-egress:v1.0.3"
[docker]
network_mode = "fastgpt_opensandbox"
# When server runs in a container, set host_ip to the host's IP or hostname so bridge-mode endpoints are reachable (e.g. host.docker.internal or the host LAN IP).
# It's required when server deployed with docker container under host.
host_ip = "host.docker.internal"
drop_capabilities = ["AUDIT_WRITE", "MKNOD", "NET_ADMIN", "NET_RAW", "SYS_ADMIN", "SYS_MODULE", "SYS_PTRACE", "SYS_TIME", "SYS_TTY_CONFIG"]
no_new_privileges = true
pids_limit = 512
[ingress]
mode = "direct"
init_sql: init_sql:
name: init_sql name: init_sql
content: | content: |
ALTER SYSTEM SET ob_vector_memory_limit_percentage = 30; ALTER SYSTEM SET ob_vector_memory_limit_percentage = 30;
...@@ -11,8 +11,6 @@ x-system-key: &x-system-key 'fastgpt-xxx' ...@@ -11,8 +11,6 @@ x-system-key: &x-system-key 'fastgpt-xxx'
x-plugin-auth-token: &x-plugin-auth-token 'token' x-plugin-auth-token: &x-plugin-auth-token 'token'
# code sandbox token # code sandbox token
x-code-sandbox-token: &x-code-sandbox-token 'codesandbox' x-code-sandbox-token: &x-code-sandbox-token 'codesandbox'
# volume manager auth token
x-volume-manager-auth-token: &x-volume-manager-auth-token 'vmtoken'
# aiproxy token # aiproxy token
x-aiproxy-token: &x-aiproxy-token 'token' x-aiproxy-token: &x-aiproxy-token 'token'
# 数据库连接相关配置 # 数据库连接相关配置
...@@ -152,14 +150,13 @@ services: ...@@ -152,14 +150,13 @@ services:
fastgpt-app: fastgpt-app:
container_name: fastgpt-app container_name: fastgpt-app
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.15.0-beta1
ports: ports:
- 3000:3000 - 3000:3000
networks: networks:
- data - data
- app - app
- codesandbox - codesandbox
- opensandbox
- aiproxy - aiproxy
depends_on: depends_on:
fastgpt-mongo: fastgpt-mongo:
...@@ -210,20 +207,6 @@ services: ...@@ -210,20 +207,6 @@ services:
# AI Proxy 的 Admin Token,与 AI Proxy 中的环境变量 ADMIN_KEY # AI Proxy 的 Admin Token,与 AI Proxy 中的环境变量 ADMIN_KEY
AIPROXY_API_TOKEN: *x-aiproxy-token AIPROXY_API_TOKEN: *x-aiproxy-token
# ==================== Agent sandbox 配置 ====================
AGENT_SANDBOX_PROVIDER: opensandbox
# OpenSandbox 配置(PROVIDER: opensandbox 时生效)
AGENT_SANDBOX_OPENSANDBOX_BASEURL: http://opensandbox-server:8090
AGENT_SANDBOX_OPENSANDBOX_API_KEY:
AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker
AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox
AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1
AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true
# Volume 持久化配置(opensandbox provider 下可选)
AGENT_SANDBOX_ENABLE_VOLUME: true
AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000
AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token
# ==================== 日志与监控 ==================== # ==================== 日志与监控 ====================
# 传递给 OTLP 收集器的服务名称 # 传递给 OTLP 收集器的服务名称
LOG_OTEL_SERVICE_NAME: fastgpt-client LOG_OTEL_SERVICE_NAME: fastgpt-client
...@@ -231,7 +214,7 @@ services: ...@@ -231,7 +214,7 @@ services:
- ./config.json:/app/data/config.json - ./config.json:/app/data/config.json
fastgpt-code-sandbox: fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox container_name: fastgpt-code-sandbox
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.15.0-beta1
networks: networks:
- codesandbox - codesandbox
restart: always restart: always
...@@ -280,7 +263,7 @@ services: ...@@ -280,7 +263,7 @@ services:
retries: 3 retries: 3
fastgpt-mcp-server: fastgpt-mcp-server:
container_name: fastgpt-mcp-server container_name: fastgpt-mcp-server
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.15.0-beta1
networks: networks:
- app - app
ports: ports:
...@@ -316,79 +299,9 @@ services: ...@@ -316,79 +299,9 @@ services:
timeout: 20s timeout: 20s
retries: 3 retries: 3
# 沙盒控制器:管理 Docker 容器的创建/执行/停止/删除
# runtime=docker 模式需要挂载 Docker socket
# 配置 docker.host_ip 为宿主机 LAN IP(容器内访问宿主机服务用)
opensandbox-server:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-server:v0.1.9
container_name: fastgpt-opensandbox-server
restart: always
networks:
- opensandbox
extra_hosts:
- 'host.docker.internal:host-gateway'
volumes:
- /var/run/docker.sock:/var/run/docker.sock # Docker 模式必须挂载,需检查是否与主机的 socket 文件一致
configs:
- source: opensandbox-config
target: /etc/opensandbox/config.toml
environment:
SANDBOX_CONFIG_PATH: /etc/opensandbox/config.toml
healthcheck:
test:
[
'CMD',
'python',
'-c',
'import urllib.request,sys; sys.exit(0 if urllib.request.urlopen("http://localhost:8090/health",timeout=3).status==200 else 1)'
]
interval: 10s
timeout: 5s
retries: 5
# Pre-pull only: not started by `docker compose up` (uses profile `prepull`).
opensandbox-agent-sandbox-image:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox:v0.1
profiles:
- prepull
opensandbox-execd-image:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-execd:v1.0.7
profiles:
- prepull
opensandbox-egress-image:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-egress:v1.0.3
profiles:
- prepull
# 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC
fastgpt-volume-manager:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-volume-manager:v0.1
container_name: fastgpt-volume-manager
restart: always
networks:
- opensandbox
volumes:
- /var/run/docker.sock:/var/run/docker.sock # Docker 模式必须挂载,需检查是否与主机的 socket 文件一致
environment:
PORT: 3000
VM_RUNTIME: docker
VM_AUTH_TOKEN: *x-volume-manager-auth-token # 对应 AGENT_SANDBOX_VOLUME_MANAGER_TOKEN
VM_VOLUME_NAME_PREFIX: fastgpt-session # volume 名称前缀
VM_LOG_LEVEL: info
VM_DOCKER_API_VERSION: v1.44
healthcheck:
test:
[
'CMD',
'bun',
'-e',
"fetch('http://localhost:3000/health').then((res) => { if (!res.ok) throw new Error(String(res.status)); })"
]
interval: 10s
timeout: 5s
retries: 5
# AI Proxy # AI Proxy
fastgpt-aiproxy: fastgpt-aiproxy:
image: registry.cn-hangzhou.aliyuncs.com/labring/aiproxy:v0.5.6 image: registry.cn-hangzhou.aliyuncs.com/labring/aiproxy:v0.5.8
container_name: fastgpt-aiproxy container_name: fastgpt-aiproxy
restart: unless-stopped restart: unless-stopped
depends_on: depends_on:
...@@ -439,8 +352,6 @@ networks: ...@@ -439,8 +352,6 @@ networks:
name: fastgpt_app name: fastgpt_app
codesandbox: codesandbox:
name: fastgpt_codesandbox name: fastgpt_codesandbox
opensandbox:
name: fastgpt_opensandbox
aiproxy: aiproxy:
name: fastgpt_aiproxy name: fastgpt_aiproxy
...@@ -457,31 +368,3 @@ volumes: ...@@ -457,31 +368,3 @@ volumes:
fastgpt-seekdb-data: fastgpt-seekdb-data:
fastgpt-seekdb-config: fastgpt-seekdb-config:
fastgpt-aiproxy_pg: fastgpt-aiproxy_pg:
configs:
opensandbox-config:
content: |
[server]
host = "0.0.0.0"
port = 8090
log_level = "INFO"
[runtime]
type = "docker"
execd_image = "registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-execd:v1.0.7"
[egress]
image = "registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-egress:v1.0.3"
[docker]
network_mode = "fastgpt_opensandbox"
# When server runs in a container, set host_ip to the host's IP or hostname so bridge-mode endpoints are reachable (e.g. host.docker.internal or the host LAN IP).
# It's required when server deployed with docker container under host.
host_ip = "host.docker.internal"
drop_capabilities = ["AUDIT_WRITE", "MKNOD", "NET_ADMIN", "NET_RAW", "SYS_ADMIN", "SYS_MODULE", "SYS_PTRACE", "SYS_TIME", "SYS_TTY_CONFIG"]
no_new_privileges = true
pids_limit = 512
[ingress]
mode = "direct"
...@@ -11,8 +11,6 @@ x-system-key: &x-system-key 'fastgpt-xxx' ...@@ -11,8 +11,6 @@ x-system-key: &x-system-key 'fastgpt-xxx'
x-plugin-auth-token: &x-plugin-auth-token 'token' x-plugin-auth-token: &x-plugin-auth-token 'token'
# code sandbox token # code sandbox token
x-code-sandbox-token: &x-code-sandbox-token 'codesandbox' x-code-sandbox-token: &x-code-sandbox-token 'codesandbox'
# volume manager auth token
x-volume-manager-auth-token: &x-volume-manager-auth-token 'vmtoken'
# aiproxy token # aiproxy token
x-aiproxy-token: &x-aiproxy-token 'token' x-aiproxy-token: &x-aiproxy-token 'token'
# 数据库连接相关配置 # 数据库连接相关配置
...@@ -63,7 +61,6 @@ services: ...@@ -63,7 +61,6 @@ services:
interval: 5s interval: 5s
timeout: 5s timeout: 5s
retries: 10 retries: 10
fastgpt-mongo: fastgpt-mongo:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29
container_name: fastgpt-mongo container_name: fastgpt-mongo
...@@ -151,14 +148,13 @@ services: ...@@ -151,14 +148,13 @@ services:
fastgpt-app: fastgpt-app:
container_name: fastgpt-app container_name: fastgpt-app
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.15.0-beta1
ports: ports:
- 3000:3000 - 3000:3000
networks: networks:
- data - data
- app - app
- codesandbox - codesandbox
- opensandbox
- aiproxy - aiproxy
depends_on: depends_on:
fastgpt-mongo: fastgpt-mongo:
...@@ -209,20 +205,6 @@ services: ...@@ -209,20 +205,6 @@ services:
# AI Proxy 的 Admin Token,与 AI Proxy 中的环境变量 ADMIN_KEY # AI Proxy 的 Admin Token,与 AI Proxy 中的环境变量 ADMIN_KEY
AIPROXY_API_TOKEN: *x-aiproxy-token AIPROXY_API_TOKEN: *x-aiproxy-token
# ==================== Agent sandbox 配置 ====================
AGENT_SANDBOX_PROVIDER: opensandbox
# OpenSandbox 配置(PROVIDER: opensandbox 时生效)
AGENT_SANDBOX_OPENSANDBOX_BASEURL: http://opensandbox-server:8090
AGENT_SANDBOX_OPENSANDBOX_API_KEY:
AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker
AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox
AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1
AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true
# Volume 持久化配置(opensandbox provider 下可选)
AGENT_SANDBOX_ENABLE_VOLUME: true
AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000
AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token
# ==================== 日志与监控 ==================== # ==================== 日志与监控 ====================
# 传递给 OTLP 收集器的服务名称 # 传递给 OTLP 收集器的服务名称
LOG_OTEL_SERVICE_NAME: fastgpt-client LOG_OTEL_SERVICE_NAME: fastgpt-client
...@@ -230,7 +212,7 @@ services: ...@@ -230,7 +212,7 @@ services:
- ./config.json:/app/data/config.json - ./config.json:/app/data/config.json
fastgpt-code-sandbox: fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox container_name: fastgpt-code-sandbox
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.15.0-beta1
networks: networks:
- codesandbox - codesandbox
restart: always restart: always
...@@ -279,7 +261,7 @@ services: ...@@ -279,7 +261,7 @@ services:
retries: 3 retries: 3
fastgpt-mcp-server: fastgpt-mcp-server:
container_name: fastgpt-mcp-server container_name: fastgpt-mcp-server
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.15.0-beta1
networks: networks:
- app - app
ports: ports:
...@@ -315,79 +297,9 @@ services: ...@@ -315,79 +297,9 @@ services:
timeout: 20s timeout: 20s
retries: 3 retries: 3
# 沙盒控制器:管理 Docker 容器的创建/执行/停止/删除
# runtime=docker 模式需要挂载 Docker socket
# 配置 docker.host_ip 为宿主机 LAN IP(容器内访问宿主机服务用)
opensandbox-server:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-server:v0.1.9
container_name: fastgpt-opensandbox-server
restart: always
networks:
- opensandbox
extra_hosts:
- 'host.docker.internal:host-gateway'
volumes:
- /var/run/docker.sock:/var/run/docker.sock # Docker 模式必须挂载,需检查是否与主机的 socket 文件一致
configs:
- source: opensandbox-config
target: /etc/opensandbox/config.toml
environment:
SANDBOX_CONFIG_PATH: /etc/opensandbox/config.toml
healthcheck:
test:
[
'CMD',
'python',
'-c',
'import urllib.request,sys; sys.exit(0 if urllib.request.urlopen("http://localhost:8090/health",timeout=3).status==200 else 1)'
]
interval: 10s
timeout: 5s
retries: 5
# Pre-pull only: not started by `docker compose up` (uses profile `prepull`).
opensandbox-agent-sandbox-image:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox:v0.1
profiles:
- prepull
opensandbox-execd-image:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-execd:v1.0.7
profiles:
- prepull
opensandbox-egress-image:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-egress:v1.0.3
profiles:
- prepull
# 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC
fastgpt-volume-manager:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-volume-manager:v0.1
container_name: fastgpt-volume-manager
restart: always
networks:
- opensandbox
volumes:
- /var/run/docker.sock:/var/run/docker.sock # Docker 模式必须挂载,需检查是否与主机的 socket 文件一致
environment:
PORT: 3000
VM_RUNTIME: docker
VM_AUTH_TOKEN: *x-volume-manager-auth-token # 对应 AGENT_SANDBOX_VOLUME_MANAGER_TOKEN
VM_VOLUME_NAME_PREFIX: fastgpt-session # volume 名称前缀
VM_LOG_LEVEL: info
VM_DOCKER_API_VERSION: v1.44
healthcheck:
test:
[
'CMD',
'bun',
'-e',
"fetch('http://localhost:3000/health').then((res) => { if (!res.ok) throw new Error(String(res.status)); })"
]
interval: 10s
timeout: 5s
retries: 5
# AI Proxy # AI Proxy
fastgpt-aiproxy: fastgpt-aiproxy:
image: registry.cn-hangzhou.aliyuncs.com/labring/aiproxy:v0.5.6 image: registry.cn-hangzhou.aliyuncs.com/labring/aiproxy:v0.5.8
container_name: fastgpt-aiproxy container_name: fastgpt-aiproxy
restart: unless-stopped restart: unless-stopped
depends_on: depends_on:
...@@ -438,8 +350,6 @@ networks: ...@@ -438,8 +350,6 @@ networks:
name: fastgpt_app name: fastgpt_app
codesandbox: codesandbox:
name: fastgpt_codesandbox name: fastgpt_codesandbox
opensandbox:
name: fastgpt_opensandbox
aiproxy: aiproxy:
name: fastgpt_aiproxy name: fastgpt_aiproxy
...@@ -456,31 +366,3 @@ volumes: ...@@ -456,31 +366,3 @@ volumes:
fastgpt-seekdb-data: fastgpt-seekdb-data:
fastgpt-seekdb-config: fastgpt-seekdb-config:
fastgpt-aiproxy_pg: fastgpt-aiproxy_pg:
configs:
opensandbox-config:
content: |
[server]
host = "0.0.0.0"
port = 8090
log_level = "INFO"
[runtime]
type = "docker"
execd_image = "registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-execd:v1.0.7"
[egress]
image = "registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-egress:v1.0.3"
[docker]
network_mode = "fastgpt_opensandbox"
# When server runs in a container, set host_ip to the host's IP or hostname so bridge-mode endpoints are reachable (e.g. host.docker.internal or the host LAN IP).
# It's required when server deployed with docker container under host.
host_ip = "host.docker.internal"
drop_capabilities = ["AUDIT_WRITE", "MKNOD", "NET_ADMIN", "NET_RAW", "SYS_ADMIN", "SYS_MODULE", "SYS_PTRACE", "SYS_TIME", "SYS_TTY_CONFIG"]
no_new_privileges = true
pids_limit = 512
[ingress]
mode = "direct"
...@@ -11,8 +11,6 @@ x-system-key: &x-system-key 'fastgpt-xxx' ...@@ -11,8 +11,6 @@ x-system-key: &x-system-key 'fastgpt-xxx'
x-plugin-auth-token: &x-plugin-auth-token 'token' x-plugin-auth-token: &x-plugin-auth-token 'token'
# code sandbox token # code sandbox token
x-code-sandbox-token: &x-code-sandbox-token 'codesandbox' x-code-sandbox-token: &x-code-sandbox-token 'codesandbox'
# volume manager auth token
x-volume-manager-auth-token: &x-volume-manager-auth-token 'vmtoken'
# aiproxy token # aiproxy token
x-aiproxy-token: &x-aiproxy-token 'token' x-aiproxy-token: &x-aiproxy-token 'token'
# 数据库连接相关配置 # 数据库连接相关配置
...@@ -43,7 +41,6 @@ x-log-config: &x-log-config ...@@ -43,7 +41,6 @@ x-log-config: &x-log-config
x-vec-config: &x-vec-config x-vec-config: &x-vec-config
SEEKDB_URL: mysql://root:seekdbpassword@fastgpt-vector:2881/mysql SEEKDB_URL: mysql://root:seekdbpassword@fastgpt-vector:2881/mysql
services: services:
# Vector DB # Vector DB
fastgpt-vector: fastgpt-vector:
...@@ -69,7 +66,6 @@ services: ...@@ -69,7 +66,6 @@ services:
timeout: 10s timeout: 10s
retries: 1000 retries: 1000
start_period: 10s start_period: 10s
fastgpt-mongo: fastgpt-mongo:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29
container_name: fastgpt-mongo container_name: fastgpt-mongo
...@@ -157,14 +153,13 @@ services: ...@@ -157,14 +153,13 @@ services:
fastgpt-app: fastgpt-app:
container_name: fastgpt-app container_name: fastgpt-app
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.15.0-beta1
ports: ports:
- 3000:3000 - 3000:3000
networks: networks:
- data - data
- app - app
- codesandbox - codesandbox
- opensandbox
- aiproxy - aiproxy
depends_on: depends_on:
fastgpt-mongo: fastgpt-mongo:
...@@ -215,20 +210,6 @@ services: ...@@ -215,20 +210,6 @@ services:
# AI Proxy 的 Admin Token,与 AI Proxy 中的环境变量 ADMIN_KEY # AI Proxy 的 Admin Token,与 AI Proxy 中的环境变量 ADMIN_KEY
AIPROXY_API_TOKEN: *x-aiproxy-token AIPROXY_API_TOKEN: *x-aiproxy-token
# ==================== Agent sandbox 配置 ====================
AGENT_SANDBOX_PROVIDER: opensandbox
# OpenSandbox 配置(PROVIDER: opensandbox 时生效)
AGENT_SANDBOX_OPENSANDBOX_BASEURL: http://opensandbox-server:8090
AGENT_SANDBOX_OPENSANDBOX_API_KEY:
AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker
AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox
AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1
AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true
# Volume 持久化配置(opensandbox provider 下可选)
AGENT_SANDBOX_ENABLE_VOLUME: true
AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000
AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token
# ==================== 日志与监控 ==================== # ==================== 日志与监控 ====================
# 传递给 OTLP 收集器的服务名称 # 传递给 OTLP 收集器的服务名称
LOG_OTEL_SERVICE_NAME: fastgpt-client LOG_OTEL_SERVICE_NAME: fastgpt-client
...@@ -236,7 +217,7 @@ services: ...@@ -236,7 +217,7 @@ services:
- ./config.json:/app/data/config.json - ./config.json:/app/data/config.json
fastgpt-code-sandbox: fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox container_name: fastgpt-code-sandbox
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.15.0-beta1
networks: networks:
- codesandbox - codesandbox
restart: always restart: always
...@@ -285,7 +266,7 @@ services: ...@@ -285,7 +266,7 @@ services:
retries: 3 retries: 3
fastgpt-mcp-server: fastgpt-mcp-server:
container_name: fastgpt-mcp-server container_name: fastgpt-mcp-server
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.15.0-beta1
networks: networks:
- app - app
ports: ports:
...@@ -321,79 +302,9 @@ services: ...@@ -321,79 +302,9 @@ services:
timeout: 20s timeout: 20s
retries: 3 retries: 3
# 沙盒控制器:管理 Docker 容器的创建/执行/停止/删除
# runtime=docker 模式需要挂载 Docker socket
# 配置 docker.host_ip 为宿主机 LAN IP(容器内访问宿主机服务用)
opensandbox-server:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-server:v0.1.9
container_name: fastgpt-opensandbox-server
restart: always
networks:
- opensandbox
extra_hosts:
- 'host.docker.internal:host-gateway'
volumes:
- /var/run/docker.sock:/var/run/docker.sock # Docker 模式必须挂载,需检查是否与主机的 socket 文件一致
configs:
- source: opensandbox-config
target: /etc/opensandbox/config.toml
environment:
SANDBOX_CONFIG_PATH: /etc/opensandbox/config.toml
healthcheck:
test:
[
'CMD',
'python',
'-c',
'import urllib.request,sys; sys.exit(0 if urllib.request.urlopen("http://localhost:8090/health",timeout=3).status==200 else 1)'
]
interval: 10s
timeout: 5s
retries: 5
# Pre-pull only: not started by `docker compose up` (uses profile `prepull`).
opensandbox-agent-sandbox-image:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox:v0.1
profiles:
- prepull
opensandbox-execd-image:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-execd:v1.0.7
profiles:
- prepull
opensandbox-egress-image:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-egress:v1.0.3
profiles:
- prepull
# 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC
fastgpt-volume-manager:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-volume-manager:v0.1
container_name: fastgpt-volume-manager
restart: always
networks:
- opensandbox
volumes:
- /var/run/docker.sock:/var/run/docker.sock # Docker 模式必须挂载,需检查是否与主机的 socket 文件一致
environment:
PORT: 3000
VM_RUNTIME: docker
VM_AUTH_TOKEN: *x-volume-manager-auth-token # 对应 AGENT_SANDBOX_VOLUME_MANAGER_TOKEN
VM_VOLUME_NAME_PREFIX: fastgpt-session # volume 名称前缀
VM_LOG_LEVEL: info
VM_DOCKER_API_VERSION: v1.44
healthcheck:
test:
[
'CMD',
'bun',
'-e',
"fetch('http://localhost:3000/health').then((res) => { if (!res.ok) throw new Error(String(res.status)); })"
]
interval: 10s
timeout: 5s
retries: 5
# AI Proxy # AI Proxy
fastgpt-aiproxy: fastgpt-aiproxy:
image: registry.cn-hangzhou.aliyuncs.com/labring/aiproxy:v0.5.6 image: registry.cn-hangzhou.aliyuncs.com/labring/aiproxy:v0.5.8
container_name: fastgpt-aiproxy container_name: fastgpt-aiproxy
restart: unless-stopped restart: unless-stopped
depends_on: depends_on:
...@@ -444,8 +355,6 @@ networks: ...@@ -444,8 +355,6 @@ networks:
name: fastgpt_app name: fastgpt_app
codesandbox: codesandbox:
name: fastgpt_codesandbox name: fastgpt_codesandbox
opensandbox:
name: fastgpt_opensandbox
aiproxy: aiproxy:
name: fastgpt_aiproxy name: fastgpt_aiproxy
...@@ -462,31 +371,3 @@ volumes: ...@@ -462,31 +371,3 @@ volumes:
fastgpt-seekdb-data: fastgpt-seekdb-data:
fastgpt-seekdb-config: fastgpt-seekdb-config:
fastgpt-aiproxy_pg: fastgpt-aiproxy_pg:
configs:
opensandbox-config:
content: |
[server]
host = "0.0.0.0"
port = 8090
log_level = "INFO"
[runtime]
type = "docker"
execd_image = "registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-execd:v1.0.7"
[egress]
image = "registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-egress:v1.0.3"
[docker]
network_mode = "fastgpt_opensandbox"
# When server runs in a container, set host_ip to the host's IP or hostname so bridge-mode endpoints are reachable (e.g. host.docker.internal or the host LAN IP).
# It's required when server deployed with docker container under host.
host_ip = "host.docker.internal"
drop_capabilities = ["AUDIT_WRITE", "MKNOD", "NET_ADMIN", "NET_RAW", "SYS_ADMIN", "SYS_MODULE", "SYS_PTRACE", "SYS_TIME", "SYS_TTY_CONFIG"]
no_new_privileges = true
pids_limit = 512
[ingress]
mode = "direct"
...@@ -11,8 +11,6 @@ x-system-key: &x-system-key 'fastgpt-xxx' ...@@ -11,8 +11,6 @@ x-system-key: &x-system-key 'fastgpt-xxx'
x-plugin-auth-token: &x-plugin-auth-token 'token' x-plugin-auth-token: &x-plugin-auth-token 'token'
# code sandbox token # code sandbox token
x-code-sandbox-token: &x-code-sandbox-token 'codesandbox' x-code-sandbox-token: &x-code-sandbox-token 'codesandbox'
# volume manager auth token
x-volume-manager-auth-token: &x-volume-manager-auth-token 'vmtoken'
# aiproxy token # aiproxy token
x-aiproxy-token: &x-aiproxy-token 'token' x-aiproxy-token: &x-aiproxy-token 'token'
# 数据库连接相关配置 # 数据库连接相关配置
...@@ -134,14 +132,13 @@ services: ...@@ -134,14 +132,13 @@ services:
fastgpt-app: fastgpt-app:
container_name: fastgpt-app container_name: fastgpt-app
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.15.0-beta1
ports: ports:
- 3000:3000 - 3000:3000
networks: networks:
- data - data
- app - app
- codesandbox - codesandbox
- opensandbox
- aiproxy - aiproxy
depends_on: depends_on:
fastgpt-mongo: fastgpt-mongo:
...@@ -192,20 +189,6 @@ services: ...@@ -192,20 +189,6 @@ services:
# AI Proxy 的 Admin Token,与 AI Proxy 中的环境变量 ADMIN_KEY # AI Proxy 的 Admin Token,与 AI Proxy 中的环境变量 ADMIN_KEY
AIPROXY_API_TOKEN: *x-aiproxy-token AIPROXY_API_TOKEN: *x-aiproxy-token
# ==================== Agent sandbox 配置 ====================
AGENT_SANDBOX_PROVIDER: opensandbox
# OpenSandbox 配置(PROVIDER: opensandbox 时生效)
AGENT_SANDBOX_OPENSANDBOX_BASEURL: http://opensandbox-server:8090
AGENT_SANDBOX_OPENSANDBOX_API_KEY:
AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker
AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox
AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1
AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true
# Volume 持久化配置(opensandbox provider 下可选)
AGENT_SANDBOX_ENABLE_VOLUME: true
AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000
AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token
# ==================== 日志与监控 ==================== # ==================== 日志与监控 ====================
# 传递给 OTLP 收集器的服务名称 # 传递给 OTLP 收集器的服务名称
LOG_OTEL_SERVICE_NAME: fastgpt-client LOG_OTEL_SERVICE_NAME: fastgpt-client
...@@ -213,7 +196,7 @@ services: ...@@ -213,7 +196,7 @@ services:
- ./config.json:/app/data/config.json - ./config.json:/app/data/config.json
fastgpt-code-sandbox: fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox container_name: fastgpt-code-sandbox
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.15.0-beta1
networks: networks:
- codesandbox - codesandbox
restart: always restart: always
...@@ -262,7 +245,7 @@ services: ...@@ -262,7 +245,7 @@ services:
retries: 3 retries: 3
fastgpt-mcp-server: fastgpt-mcp-server:
container_name: fastgpt-mcp-server container_name: fastgpt-mcp-server
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.15.0-beta1
networks: networks:
- app - app
ports: ports:
...@@ -298,79 +281,9 @@ services: ...@@ -298,79 +281,9 @@ services:
timeout: 20s timeout: 20s
retries: 3 retries: 3
# 沙盒控制器:管理 Docker 容器的创建/执行/停止/删除
# runtime=docker 模式需要挂载 Docker socket
# 配置 docker.host_ip 为宿主机 LAN IP(容器内访问宿主机服务用)
opensandbox-server:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-server:v0.1.9
container_name: fastgpt-opensandbox-server
restart: always
networks:
- opensandbox
extra_hosts:
- 'host.docker.internal:host-gateway'
volumes:
- /var/run/docker.sock:/var/run/docker.sock # Docker 模式必须挂载,需检查是否与主机的 socket 文件一致
configs:
- source: opensandbox-config
target: /etc/opensandbox/config.toml
environment:
SANDBOX_CONFIG_PATH: /etc/opensandbox/config.toml
healthcheck:
test:
[
'CMD',
'python',
'-c',
'import urllib.request,sys; sys.exit(0 if urllib.request.urlopen("http://localhost:8090/health",timeout=3).status==200 else 1)'
]
interval: 10s
timeout: 5s
retries: 5
# Pre-pull only: not started by `docker compose up` (uses profile `prepull`).
opensandbox-agent-sandbox-image:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox:v0.1
profiles:
- prepull
opensandbox-execd-image:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-execd:v1.0.7
profiles:
- prepull
opensandbox-egress-image:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-egress:v1.0.3
profiles:
- prepull
# 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC
fastgpt-volume-manager:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-volume-manager:v0.1
container_name: fastgpt-volume-manager
restart: always
networks:
- opensandbox
volumes:
- /var/run/docker.sock:/var/run/docker.sock # Docker 模式必须挂载,需检查是否与主机的 socket 文件一致
environment:
PORT: 3000
VM_RUNTIME: docker
VM_AUTH_TOKEN: *x-volume-manager-auth-token # 对应 AGENT_SANDBOX_VOLUME_MANAGER_TOKEN
VM_VOLUME_NAME_PREFIX: fastgpt-session # volume 名称前缀
VM_LOG_LEVEL: info
VM_DOCKER_API_VERSION: v1.44
healthcheck:
test:
[
'CMD',
'bun',
'-e',
"fetch('http://localhost:3000/health').then((res) => { if (!res.ok) throw new Error(String(res.status)); })"
]
interval: 10s
timeout: 5s
retries: 5
# AI Proxy # AI Proxy
fastgpt-aiproxy: fastgpt-aiproxy:
image: registry.cn-hangzhou.aliyuncs.com/labring/aiproxy:v0.5.6 image: registry.cn-hangzhou.aliyuncs.com/labring/aiproxy:v0.5.8
container_name: fastgpt-aiproxy container_name: fastgpt-aiproxy
restart: unless-stopped restart: unless-stopped
depends_on: depends_on:
...@@ -421,8 +334,6 @@ networks: ...@@ -421,8 +334,6 @@ networks:
name: fastgpt_app name: fastgpt_app
codesandbox: codesandbox:
name: fastgpt_codesandbox name: fastgpt_codesandbox
opensandbox:
name: fastgpt_opensandbox
aiproxy: aiproxy:
name: fastgpt_aiproxy name: fastgpt_aiproxy
...@@ -439,31 +350,3 @@ volumes: ...@@ -439,31 +350,3 @@ volumes:
fastgpt-seekdb-data: fastgpt-seekdb-data:
fastgpt-seekdb-config: fastgpt-seekdb-config:
fastgpt-aiproxy_pg: fastgpt-aiproxy_pg:
configs:
opensandbox-config:
content: |
[server]
host = "0.0.0.0"
port = 8090
log_level = "INFO"
[runtime]
type = "docker"
execd_image = "registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-execd:v1.0.7"
[egress]
image = "registry.cn-hangzhou.aliyuncs.com/fastgpt/opensandbox-egress:v1.0.3"
[docker]
network_mode = "fastgpt_opensandbox"
# When server runs in a container, set host_ip to the host's IP or hostname so bridge-mode endpoints are reachable (e.g. host.docker.internal or the host LAN IP).
# It's required when server deployed with docker container under host.
host_ip = "host.docker.internal"
drop_capabilities = ["AUDIT_WRITE", "MKNOD", "NET_ADMIN", "NET_RAW", "SYS_ADMIN", "SYS_MODULE", "SYS_PTRACE", "SYS_TIME", "SYS_TTY_CONFIG"]
no_new_privileges = true
pids_limit = 512
[ingress]
mode = "direct"
...@@ -11,8 +11,6 @@ x-system-key: &x-system-key 'fastgpt-xxx' ...@@ -11,8 +11,6 @@ x-system-key: &x-system-key 'fastgpt-xxx'
x-plugin-auth-token: &x-plugin-auth-token 'token' x-plugin-auth-token: &x-plugin-auth-token 'token'
# code sandbox token # code sandbox token
x-code-sandbox-token: &x-code-sandbox-token 'codesandbox' x-code-sandbox-token: &x-code-sandbox-token 'codesandbox'
# volume manager auth token
x-volume-manager-auth-token: &x-volume-manager-auth-token 'vmtoken'
# aiproxy token # aiproxy token
x-aiproxy-token: &x-aiproxy-token 'token' x-aiproxy-token: &x-aiproxy-token 'token'
# 数据库连接相关配置 # 数据库连接相关配置
...@@ -44,7 +42,6 @@ x-vec-config: &x-vec-config ...@@ -44,7 +42,6 @@ x-vec-config: &x-vec-config
MILVUS_ADDRESS: http://fastgpt-vector:19530 MILVUS_ADDRESS: http://fastgpt-vector:19530
MILVUS_TOKEN: none MILVUS_TOKEN: none
services: services:
# Vector DB # Vector DB
fastgpt-milvus-minio: fastgpt-milvus-minio:
...@@ -104,7 +101,6 @@ services: ...@@ -104,7 +101,6 @@ services:
depends_on: depends_on:
- 'fastgpt-milvus-etcd' - 'fastgpt-milvus-etcd'
- 'fastgpt-milvus-minio' - 'fastgpt-milvus-minio'
fastgpt-mongo: fastgpt-mongo:
image: mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29 image: mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29
container_name: fastgpt-mongo container_name: fastgpt-mongo
...@@ -192,14 +188,13 @@ services: ...@@ -192,14 +188,13 @@ services:
fastgpt-app: fastgpt-app:
container_name: fastgpt-app container_name: fastgpt-app
image: ghcr.io/labring/fastgpt:v4.14.20 image: ghcr.io/labring/fastgpt:v4.15.0-beta1
ports: ports:
- 3000:3000 - 3000:3000
networks: networks:
- data - data
- app - app
- codesandbox - codesandbox
- opensandbox
- aiproxy - aiproxy
depends_on: depends_on:
fastgpt-mongo: fastgpt-mongo:
...@@ -250,20 +245,6 @@ services: ...@@ -250,20 +245,6 @@ services:
# AI Proxy 的 Admin Token,与 AI Proxy 中的环境变量 ADMIN_KEY # AI Proxy 的 Admin Token,与 AI Proxy 中的环境变量 ADMIN_KEY
AIPROXY_API_TOKEN: *x-aiproxy-token AIPROXY_API_TOKEN: *x-aiproxy-token
# ==================== Agent sandbox 配置 ====================
AGENT_SANDBOX_PROVIDER: opensandbox
# OpenSandbox 配置(PROVIDER: opensandbox 时生效)
AGENT_SANDBOX_OPENSANDBOX_BASEURL: http://opensandbox-server:8090
AGENT_SANDBOX_OPENSANDBOX_API_KEY:
AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker
AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: ghcr.io/labring/fastgpt-agent-sandbox
AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1
AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true
# Volume 持久化配置(opensandbox provider 下可选)
AGENT_SANDBOX_ENABLE_VOLUME: true
AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000
AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token
# ==================== 日志与监控 ==================== # ==================== 日志与监控 ====================
# 传递给 OTLP 收集器的服务名称 # 传递给 OTLP 收集器的服务名称
LOG_OTEL_SERVICE_NAME: fastgpt-client LOG_OTEL_SERVICE_NAME: fastgpt-client
...@@ -271,7 +252,7 @@ services: ...@@ -271,7 +252,7 @@ services:
- ./config.json:/app/data/config.json - ./config.json:/app/data/config.json
fastgpt-code-sandbox: fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox container_name: fastgpt-code-sandbox
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.20 image: ghcr.io/labring/fastgpt-code-sandbox:v4.15.0-beta1
networks: networks:
- codesandbox - codesandbox
restart: always restart: always
...@@ -320,7 +301,7 @@ services: ...@@ -320,7 +301,7 @@ services:
retries: 3 retries: 3
fastgpt-mcp-server: fastgpt-mcp-server:
container_name: fastgpt-mcp-server container_name: fastgpt-mcp-server
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.20 image: ghcr.io/labring/fastgpt-mcp_server:v4.15.0-beta1
networks: networks:
- app - app
ports: ports:
...@@ -356,79 +337,9 @@ services: ...@@ -356,79 +337,9 @@ services:
timeout: 20s timeout: 20s
retries: 3 retries: 3
# 沙盒控制器:管理 Docker 容器的创建/执行/停止/删除
# runtime=docker 模式需要挂载 Docker socket
# 配置 docker.host_ip 为宿主机 LAN IP(容器内访问宿主机服务用)
opensandbox-server:
image: opensandbox/server:v0.1.9
container_name: fastgpt-opensandbox-server
restart: always
networks:
- opensandbox
extra_hosts:
- 'host.docker.internal:host-gateway'
volumes:
- /var/run/docker.sock:/var/run/docker.sock # Docker 模式必须挂载,需检查是否与主机的 socket 文件一致
configs:
- source: opensandbox-config
target: /etc/opensandbox/config.toml
environment:
SANDBOX_CONFIG_PATH: /etc/opensandbox/config.toml
healthcheck:
test:
[
'CMD',
'python',
'-c',
'import urllib.request,sys; sys.exit(0 if urllib.request.urlopen("http://localhost:8090/health",timeout=3).status==200 else 1)'
]
interval: 10s
timeout: 5s
retries: 5
# Pre-pull only: not started by `docker compose up` (uses profile `prepull`).
opensandbox-agent-sandbox-image:
image: ghcr.io/labring/fastgpt-agent-sandbox:v0.1
profiles:
- prepull
opensandbox-execd-image:
image: opensandbox/execd:v1.0.7
profiles:
- prepull
opensandbox-egress-image:
image: opensandbox/egress:v1.0.3
profiles:
- prepull
# 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC
fastgpt-volume-manager:
image: ghcr.io/labring/fastgpt-agent-volume-manager:v0.1
container_name: fastgpt-volume-manager
restart: always
networks:
- opensandbox
volumes:
- /var/run/docker.sock:/var/run/docker.sock # Docker 模式必须挂载,需检查是否与主机的 socket 文件一致
environment:
PORT: 3000
VM_RUNTIME: docker
VM_AUTH_TOKEN: *x-volume-manager-auth-token # 对应 AGENT_SANDBOX_VOLUME_MANAGER_TOKEN
VM_VOLUME_NAME_PREFIX: fastgpt-session # volume 名称前缀
VM_LOG_LEVEL: info
VM_DOCKER_API_VERSION: v1.44
healthcheck:
test:
[
'CMD',
'bun',
'-e',
"fetch('http://localhost:3000/health').then((res) => { if (!res.ok) throw new Error(String(res.status)); })"
]
interval: 10s
timeout: 5s
retries: 5
# AI Proxy # AI Proxy
fastgpt-aiproxy: fastgpt-aiproxy:
image: ghcr.io/labring/aiproxy:v0.5.6 image: ghcr.io/labring/aiproxy:v0.5.8
container_name: fastgpt-aiproxy container_name: fastgpt-aiproxy
restart: unless-stopped restart: unless-stopped
depends_on: depends_on:
...@@ -479,8 +390,6 @@ networks: ...@@ -479,8 +390,6 @@ networks:
name: fastgpt_app name: fastgpt_app
codesandbox: codesandbox:
name: fastgpt_codesandbox name: fastgpt_codesandbox
opensandbox:
name: fastgpt_opensandbox
aiproxy: aiproxy:
name: fastgpt_aiproxy name: fastgpt_aiproxy
...@@ -497,31 +406,3 @@ volumes: ...@@ -497,31 +406,3 @@ volumes:
fastgpt-seekdb-data: fastgpt-seekdb-data:
fastgpt-seekdb-config: fastgpt-seekdb-config:
fastgpt-aiproxy_pg: fastgpt-aiproxy_pg:
configs:
opensandbox-config:
content: |
[server]
host = "0.0.0.0"
port = 8090
log_level = "INFO"
[runtime]
type = "docker"
execd_image = "opensandbox/execd:v1.0.7"
[egress]
image = "opensandbox/egress:v1.0.3"
[docker]
network_mode = "fastgpt_opensandbox"
# When server runs in a container, set host_ip to the host's IP or hostname so bridge-mode endpoints are reachable (e.g. host.docker.internal or the host LAN IP).
# It's required when server deployed with docker container under host.
host_ip = "host.docker.internal"
drop_capabilities = ["AUDIT_WRITE", "MKNOD", "NET_ADMIN", "NET_RAW", "SYS_ADMIN", "SYS_MODULE", "SYS_PTRACE", "SYS_TIME", "SYS_TTY_CONFIG"]
no_new_privileges = true
pids_limit = 512
[ingress]
mode = "direct"
...@@ -11,8 +11,6 @@ x-system-key: &x-system-key 'fastgpt-xxx' ...@@ -11,8 +11,6 @@ x-system-key: &x-system-key 'fastgpt-xxx'
x-plugin-auth-token: &x-plugin-auth-token 'token' x-plugin-auth-token: &x-plugin-auth-token 'token'
# code sandbox token # code sandbox token
x-code-sandbox-token: &x-code-sandbox-token 'codesandbox' x-code-sandbox-token: &x-code-sandbox-token 'codesandbox'
# volume manager auth token
x-volume-manager-auth-token: &x-volume-manager-auth-token 'vmtoken'
# aiproxy token # aiproxy token
x-aiproxy-token: &x-aiproxy-token 'token' x-aiproxy-token: &x-aiproxy-token 'token'
# 数据库连接相关配置 # 数据库连接相关配置
...@@ -43,7 +41,6 @@ x-log-config: &x-log-config ...@@ -43,7 +41,6 @@ x-log-config: &x-log-config
x-vec-config: &x-vec-config x-vec-config: &x-vec-config
OCEANBASE_URL: mysql://root%40tenantname:tenantpassword@fastgpt-vector:2881/mysql OCEANBASE_URL: mysql://root%40tenantname:tenantpassword@fastgpt-vector:2881/mysql
services: services:
# Vector DB # Vector DB
fastgpt-vector: fastgpt-vector:
...@@ -82,7 +79,6 @@ services: ...@@ -82,7 +79,6 @@ services:
timeout: 10s timeout: 10s
retries: 1000 retries: 1000
start_period: 10s start_period: 10s
fastgpt-mongo: fastgpt-mongo:
image: mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29 image: mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29
container_name: fastgpt-mongo container_name: fastgpt-mongo
...@@ -170,14 +166,13 @@ services: ...@@ -170,14 +166,13 @@ services:
fastgpt-app: fastgpt-app:
container_name: fastgpt-app container_name: fastgpt-app
image: ghcr.io/labring/fastgpt:v4.14.20 image: ghcr.io/labring/fastgpt:v4.15.0-beta1
ports: ports:
- 3000:3000 - 3000:3000
networks: networks:
- data - data
- app - app
- codesandbox - codesandbox
- opensandbox
- aiproxy - aiproxy
depends_on: depends_on:
fastgpt-mongo: fastgpt-mongo:
...@@ -228,20 +223,6 @@ services: ...@@ -228,20 +223,6 @@ services:
# AI Proxy 的 Admin Token,与 AI Proxy 中的环境变量 ADMIN_KEY # AI Proxy 的 Admin Token,与 AI Proxy 中的环境变量 ADMIN_KEY
AIPROXY_API_TOKEN: *x-aiproxy-token AIPROXY_API_TOKEN: *x-aiproxy-token
# ==================== Agent sandbox 配置 ====================
AGENT_SANDBOX_PROVIDER: opensandbox
# OpenSandbox 配置(PROVIDER: opensandbox 时生效)
AGENT_SANDBOX_OPENSANDBOX_BASEURL: http://opensandbox-server:8090
AGENT_SANDBOX_OPENSANDBOX_API_KEY:
AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker
AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: ghcr.io/labring/fastgpt-agent-sandbox
AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1
AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true
# Volume 持久化配置(opensandbox provider 下可选)
AGENT_SANDBOX_ENABLE_VOLUME: true
AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000
AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token
# ==================== 日志与监控 ==================== # ==================== 日志与监控 ====================
# 传递给 OTLP 收集器的服务名称 # 传递给 OTLP 收集器的服务名称
LOG_OTEL_SERVICE_NAME: fastgpt-client LOG_OTEL_SERVICE_NAME: fastgpt-client
...@@ -249,7 +230,7 @@ services: ...@@ -249,7 +230,7 @@ services:
- ./config.json:/app/data/config.json - ./config.json:/app/data/config.json
fastgpt-code-sandbox: fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox container_name: fastgpt-code-sandbox
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.20 image: ghcr.io/labring/fastgpt-code-sandbox:v4.15.0-beta1
networks: networks:
- codesandbox - codesandbox
restart: always restart: always
...@@ -298,7 +279,7 @@ services: ...@@ -298,7 +279,7 @@ services:
retries: 3 retries: 3
fastgpt-mcp-server: fastgpt-mcp-server:
container_name: fastgpt-mcp-server container_name: fastgpt-mcp-server
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.20 image: ghcr.io/labring/fastgpt-mcp_server:v4.15.0-beta1
networks: networks:
- app - app
ports: ports:
...@@ -334,79 +315,9 @@ services: ...@@ -334,79 +315,9 @@ services:
timeout: 20s timeout: 20s
retries: 3 retries: 3
# 沙盒控制器:管理 Docker 容器的创建/执行/停止/删除
# runtime=docker 模式需要挂载 Docker socket
# 配置 docker.host_ip 为宿主机 LAN IP(容器内访问宿主机服务用)
opensandbox-server:
image: opensandbox/server:v0.1.9
container_name: fastgpt-opensandbox-server
restart: always
networks:
- opensandbox
extra_hosts:
- 'host.docker.internal:host-gateway'
volumes:
- /var/run/docker.sock:/var/run/docker.sock # Docker 模式必须挂载,需检查是否与主机的 socket 文件一致
configs:
- source: opensandbox-config
target: /etc/opensandbox/config.toml
environment:
SANDBOX_CONFIG_PATH: /etc/opensandbox/config.toml
healthcheck:
test:
[
'CMD',
'python',
'-c',
'import urllib.request,sys; sys.exit(0 if urllib.request.urlopen("http://localhost:8090/health",timeout=3).status==200 else 1)'
]
interval: 10s
timeout: 5s
retries: 5
# Pre-pull only: not started by `docker compose up` (uses profile `prepull`).
opensandbox-agent-sandbox-image:
image: ghcr.io/labring/fastgpt-agent-sandbox:v0.1
profiles:
- prepull
opensandbox-execd-image:
image: opensandbox/execd:v1.0.7
profiles:
- prepull
opensandbox-egress-image:
image: opensandbox/egress:v1.0.3
profiles:
- prepull
# 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC
fastgpt-volume-manager:
image: ghcr.io/labring/fastgpt-agent-volume-manager:v0.1
container_name: fastgpt-volume-manager
restart: always
networks:
- opensandbox
volumes:
- /var/run/docker.sock:/var/run/docker.sock # Docker 模式必须挂载,需检查是否与主机的 socket 文件一致
environment:
PORT: 3000
VM_RUNTIME: docker
VM_AUTH_TOKEN: *x-volume-manager-auth-token # 对应 AGENT_SANDBOX_VOLUME_MANAGER_TOKEN
VM_VOLUME_NAME_PREFIX: fastgpt-session # volume 名称前缀
VM_LOG_LEVEL: info
VM_DOCKER_API_VERSION: v1.44
healthcheck:
test:
[
'CMD',
'bun',
'-e',
"fetch('http://localhost:3000/health').then((res) => { if (!res.ok) throw new Error(String(res.status)); })"
]
interval: 10s
timeout: 5s
retries: 5
# AI Proxy # AI Proxy
fastgpt-aiproxy: fastgpt-aiproxy:
image: ghcr.io/labring/aiproxy:v0.5.6 image: ghcr.io/labring/aiproxy:v0.5.8
container_name: fastgpt-aiproxy container_name: fastgpt-aiproxy
restart: unless-stopped restart: unless-stopped
depends_on: depends_on:
...@@ -457,8 +368,6 @@ networks: ...@@ -457,8 +368,6 @@ networks:
name: fastgpt_app name: fastgpt_app
codesandbox: codesandbox:
name: fastgpt_codesandbox name: fastgpt_codesandbox
opensandbox:
name: fastgpt_opensandbox
aiproxy: aiproxy:
name: fastgpt_aiproxy name: fastgpt_aiproxy
...@@ -477,33 +386,7 @@ volumes: ...@@ -477,33 +386,7 @@ volumes:
fastgpt-aiproxy_pg: fastgpt-aiproxy_pg:
configs: configs:
opensandbox-config:
content: |
[server]
host = "0.0.0.0"
port = 8090
log_level = "INFO"
[runtime]
type = "docker"
execd_image = "opensandbox/execd:v1.0.7"
[egress]
image = "opensandbox/egress:v1.0.3"
[docker]
network_mode = "fastgpt_opensandbox"
# When server runs in a container, set host_ip to the host's IP or hostname so bridge-mode endpoints are reachable (e.g. host.docker.internal or the host LAN IP).
# It's required when server deployed with docker container under host.
host_ip = "host.docker.internal"
drop_capabilities = ["AUDIT_WRITE", "MKNOD", "NET_ADMIN", "NET_RAW", "SYS_ADMIN", "SYS_MODULE", "SYS_PTRACE", "SYS_TIME", "SYS_TTY_CONFIG"]
no_new_privileges = true
pids_limit = 512
[ingress]
mode = "direct"
init_sql: init_sql:
name: init_sql name: init_sql
content: | content: |
ALTER SYSTEM SET ob_vector_memory_limit_percentage = 30; ALTER SYSTEM SET ob_vector_memory_limit_percentage = 30;
...@@ -11,8 +11,6 @@ x-system-key: &x-system-key 'fastgpt-xxx' ...@@ -11,8 +11,6 @@ x-system-key: &x-system-key 'fastgpt-xxx'
x-plugin-auth-token: &x-plugin-auth-token 'token' x-plugin-auth-token: &x-plugin-auth-token 'token'
# code sandbox token # code sandbox token
x-code-sandbox-token: &x-code-sandbox-token 'codesandbox' x-code-sandbox-token: &x-code-sandbox-token 'codesandbox'
# volume manager auth token
x-volume-manager-auth-token: &x-volume-manager-auth-token 'vmtoken'
# aiproxy token # aiproxy token
x-aiproxy-token: &x-aiproxy-token 'token' x-aiproxy-token: &x-aiproxy-token 'token'
# 数据库连接相关配置 # 数据库连接相关配置
...@@ -152,14 +150,13 @@ services: ...@@ -152,14 +150,13 @@ services:
fastgpt-app: fastgpt-app:
container_name: fastgpt-app container_name: fastgpt-app
image: ghcr.io/labring/fastgpt:v4.14.20 image: ghcr.io/labring/fastgpt:v4.15.0-beta1
ports: ports:
- 3000:3000 - 3000:3000
networks: networks:
- data - data
- app - app
- codesandbox - codesandbox
- opensandbox
- aiproxy - aiproxy
depends_on: depends_on:
fastgpt-mongo: fastgpt-mongo:
...@@ -210,20 +207,6 @@ services: ...@@ -210,20 +207,6 @@ services:
# AI Proxy 的 Admin Token,与 AI Proxy 中的环境变量 ADMIN_KEY # AI Proxy 的 Admin Token,与 AI Proxy 中的环境变量 ADMIN_KEY
AIPROXY_API_TOKEN: *x-aiproxy-token AIPROXY_API_TOKEN: *x-aiproxy-token
# ==================== Agent sandbox 配置 ====================
AGENT_SANDBOX_PROVIDER: opensandbox
# OpenSandbox 配置(PROVIDER: opensandbox 时生效)
AGENT_SANDBOX_OPENSANDBOX_BASEURL: http://opensandbox-server:8090
AGENT_SANDBOX_OPENSANDBOX_API_KEY:
AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker
AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: ghcr.io/labring/fastgpt-agent-sandbox
AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1
AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true
# Volume 持久化配置(opensandbox provider 下可选)
AGENT_SANDBOX_ENABLE_VOLUME: true
AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000
AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token
# ==================== 日志与监控 ==================== # ==================== 日志与监控 ====================
# 传递给 OTLP 收集器的服务名称 # 传递给 OTLP 收集器的服务名称
LOG_OTEL_SERVICE_NAME: fastgpt-client LOG_OTEL_SERVICE_NAME: fastgpt-client
...@@ -231,7 +214,7 @@ services: ...@@ -231,7 +214,7 @@ services:
- ./config.json:/app/data/config.json - ./config.json:/app/data/config.json
fastgpt-code-sandbox: fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox container_name: fastgpt-code-sandbox
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.20 image: ghcr.io/labring/fastgpt-code-sandbox:v4.15.0-beta1
networks: networks:
- codesandbox - codesandbox
restart: always restart: always
...@@ -280,7 +263,7 @@ services: ...@@ -280,7 +263,7 @@ services:
retries: 3 retries: 3
fastgpt-mcp-server: fastgpt-mcp-server:
container_name: fastgpt-mcp-server container_name: fastgpt-mcp-server
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.20 image: ghcr.io/labring/fastgpt-mcp_server:v4.15.0-beta1
networks: networks:
- app - app
ports: ports:
...@@ -316,79 +299,9 @@ services: ...@@ -316,79 +299,9 @@ services:
timeout: 20s timeout: 20s
retries: 3 retries: 3
# 沙盒控制器:管理 Docker 容器的创建/执行/停止/删除
# runtime=docker 模式需要挂载 Docker socket
# 配置 docker.host_ip 为宿主机 LAN IP(容器内访问宿主机服务用)
opensandbox-server:
image: opensandbox/server:v0.1.9
container_name: fastgpt-opensandbox-server
restart: always
networks:
- opensandbox
extra_hosts:
- 'host.docker.internal:host-gateway'
volumes:
- /var/run/docker.sock:/var/run/docker.sock # Docker 模式必须挂载,需检查是否与主机的 socket 文件一致
configs:
- source: opensandbox-config
target: /etc/opensandbox/config.toml
environment:
SANDBOX_CONFIG_PATH: /etc/opensandbox/config.toml
healthcheck:
test:
[
'CMD',
'python',
'-c',
'import urllib.request,sys; sys.exit(0 if urllib.request.urlopen("http://localhost:8090/health",timeout=3).status==200 else 1)'
]
interval: 10s
timeout: 5s
retries: 5
# Pre-pull only: not started by `docker compose up` (uses profile `prepull`).
opensandbox-agent-sandbox-image:
image: ghcr.io/labring/fastgpt-agent-sandbox:v0.1
profiles:
- prepull
opensandbox-execd-image:
image: opensandbox/execd:v1.0.7
profiles:
- prepull
opensandbox-egress-image:
image: opensandbox/egress:v1.0.3
profiles:
- prepull
# 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC
fastgpt-volume-manager:
image: ghcr.io/labring/fastgpt-agent-volume-manager:v0.1
container_name: fastgpt-volume-manager
restart: always
networks:
- opensandbox
volumes:
- /var/run/docker.sock:/var/run/docker.sock # Docker 模式必须挂载,需检查是否与主机的 socket 文件一致
environment:
PORT: 3000
VM_RUNTIME: docker
VM_AUTH_TOKEN: *x-volume-manager-auth-token # 对应 AGENT_SANDBOX_VOLUME_MANAGER_TOKEN
VM_VOLUME_NAME_PREFIX: fastgpt-session # volume 名称前缀
VM_LOG_LEVEL: info
VM_DOCKER_API_VERSION: v1.44
healthcheck:
test:
[
'CMD',
'bun',
'-e',
"fetch('http://localhost:3000/health').then((res) => { if (!res.ok) throw new Error(String(res.status)); })"
]
interval: 10s
timeout: 5s
retries: 5
# AI Proxy # AI Proxy
fastgpt-aiproxy: fastgpt-aiproxy:
image: ghcr.io/labring/aiproxy:v0.5.6 image: ghcr.io/labring/aiproxy:v0.5.8
container_name: fastgpt-aiproxy container_name: fastgpt-aiproxy
restart: unless-stopped restart: unless-stopped
depends_on: depends_on:
...@@ -439,8 +352,6 @@ networks: ...@@ -439,8 +352,6 @@ networks:
name: fastgpt_app name: fastgpt_app
codesandbox: codesandbox:
name: fastgpt_codesandbox name: fastgpt_codesandbox
opensandbox:
name: fastgpt_opensandbox
aiproxy: aiproxy:
name: fastgpt_aiproxy name: fastgpt_aiproxy
...@@ -457,31 +368,3 @@ volumes: ...@@ -457,31 +368,3 @@ volumes:
fastgpt-seekdb-data: fastgpt-seekdb-data:
fastgpt-seekdb-config: fastgpt-seekdb-config:
fastgpt-aiproxy_pg: fastgpt-aiproxy_pg:
configs:
opensandbox-config:
content: |
[server]
host = "0.0.0.0"
port = 8090
log_level = "INFO"
[runtime]
type = "docker"
execd_image = "opensandbox/execd:v1.0.7"
[egress]
image = "opensandbox/egress:v1.0.3"
[docker]
network_mode = "fastgpt_opensandbox"
# When server runs in a container, set host_ip to the host's IP or hostname so bridge-mode endpoints are reachable (e.g. host.docker.internal or the host LAN IP).
# It's required when server deployed with docker container under host.
host_ip = "host.docker.internal"
drop_capabilities = ["AUDIT_WRITE", "MKNOD", "NET_ADMIN", "NET_RAW", "SYS_ADMIN", "SYS_MODULE", "SYS_PTRACE", "SYS_TIME", "SYS_TTY_CONFIG"]
no_new_privileges = true
pids_limit = 512
[ingress]
mode = "direct"
...@@ -11,8 +11,6 @@ x-system-key: &x-system-key 'fastgpt-xxx' ...@@ -11,8 +11,6 @@ x-system-key: &x-system-key 'fastgpt-xxx'
x-plugin-auth-token: &x-plugin-auth-token 'token' x-plugin-auth-token: &x-plugin-auth-token 'token'
# code sandbox token # code sandbox token
x-code-sandbox-token: &x-code-sandbox-token 'codesandbox' x-code-sandbox-token: &x-code-sandbox-token 'codesandbox'
# volume manager auth token
x-volume-manager-auth-token: &x-volume-manager-auth-token 'vmtoken'
# aiproxy token # aiproxy token
x-aiproxy-token: &x-aiproxy-token 'token' x-aiproxy-token: &x-aiproxy-token 'token'
# 数据库连接相关配置 # 数据库连接相关配置
...@@ -63,7 +61,6 @@ services: ...@@ -63,7 +61,6 @@ services:
interval: 5s interval: 5s
timeout: 5s timeout: 5s
retries: 10 retries: 10
fastgpt-mongo: fastgpt-mongo:
image: mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29 image: mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29
container_name: fastgpt-mongo container_name: fastgpt-mongo
...@@ -151,14 +148,13 @@ services: ...@@ -151,14 +148,13 @@ services:
fastgpt-app: fastgpt-app:
container_name: fastgpt-app container_name: fastgpt-app
image: ghcr.io/labring/fastgpt:v4.14.20 image: ghcr.io/labring/fastgpt:v4.15.0-beta1
ports: ports:
- 3000:3000 - 3000:3000
networks: networks:
- data - data
- app - app
- codesandbox - codesandbox
- opensandbox
- aiproxy - aiproxy
depends_on: depends_on:
fastgpt-mongo: fastgpt-mongo:
...@@ -209,20 +205,6 @@ services: ...@@ -209,20 +205,6 @@ services:
# AI Proxy 的 Admin Token,与 AI Proxy 中的环境变量 ADMIN_KEY # AI Proxy 的 Admin Token,与 AI Proxy 中的环境变量 ADMIN_KEY
AIPROXY_API_TOKEN: *x-aiproxy-token AIPROXY_API_TOKEN: *x-aiproxy-token
# ==================== Agent sandbox 配置 ====================
AGENT_SANDBOX_PROVIDER: opensandbox
# OpenSandbox 配置(PROVIDER: opensandbox 时生效)
AGENT_SANDBOX_OPENSANDBOX_BASEURL: http://opensandbox-server:8090
AGENT_SANDBOX_OPENSANDBOX_API_KEY:
AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker
AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: ghcr.io/labring/fastgpt-agent-sandbox
AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1
AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true
# Volume 持久化配置(opensandbox provider 下可选)
AGENT_SANDBOX_ENABLE_VOLUME: true
AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000
AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token
# ==================== 日志与监控 ==================== # ==================== 日志与监控 ====================
# 传递给 OTLP 收集器的服务名称 # 传递给 OTLP 收集器的服务名称
LOG_OTEL_SERVICE_NAME: fastgpt-client LOG_OTEL_SERVICE_NAME: fastgpt-client
...@@ -230,7 +212,7 @@ services: ...@@ -230,7 +212,7 @@ services:
- ./config.json:/app/data/config.json - ./config.json:/app/data/config.json
fastgpt-code-sandbox: fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox container_name: fastgpt-code-sandbox
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.20 image: ghcr.io/labring/fastgpt-code-sandbox:v4.15.0-beta1
networks: networks:
- codesandbox - codesandbox
restart: always restart: always
...@@ -279,7 +261,7 @@ services: ...@@ -279,7 +261,7 @@ services:
retries: 3 retries: 3
fastgpt-mcp-server: fastgpt-mcp-server:
container_name: fastgpt-mcp-server container_name: fastgpt-mcp-server
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.20 image: ghcr.io/labring/fastgpt-mcp_server:v4.15.0-beta1
networks: networks:
- app - app
ports: ports:
...@@ -315,79 +297,9 @@ services: ...@@ -315,79 +297,9 @@ services:
timeout: 20s timeout: 20s
retries: 3 retries: 3
# 沙盒控制器:管理 Docker 容器的创建/执行/停止/删除
# runtime=docker 模式需要挂载 Docker socket
# 配置 docker.host_ip 为宿主机 LAN IP(容器内访问宿主机服务用)
opensandbox-server:
image: opensandbox/server:v0.1.9
container_name: fastgpt-opensandbox-server
restart: always
networks:
- opensandbox
extra_hosts:
- 'host.docker.internal:host-gateway'
volumes:
- /var/run/docker.sock:/var/run/docker.sock # Docker 模式必须挂载,需检查是否与主机的 socket 文件一致
configs:
- source: opensandbox-config
target: /etc/opensandbox/config.toml
environment:
SANDBOX_CONFIG_PATH: /etc/opensandbox/config.toml
healthcheck:
test:
[
'CMD',
'python',
'-c',
'import urllib.request,sys; sys.exit(0 if urllib.request.urlopen("http://localhost:8090/health",timeout=3).status==200 else 1)'
]
interval: 10s
timeout: 5s
retries: 5
# Pre-pull only: not started by `docker compose up` (uses profile `prepull`).
opensandbox-agent-sandbox-image:
image: ghcr.io/labring/fastgpt-agent-sandbox:v0.1
profiles:
- prepull
opensandbox-execd-image:
image: opensandbox/execd:v1.0.7
profiles:
- prepull
opensandbox-egress-image:
image: opensandbox/egress:v1.0.3
profiles:
- prepull
# 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC
fastgpt-volume-manager:
image: ghcr.io/labring/fastgpt-agent-volume-manager:v0.1
container_name: fastgpt-volume-manager
restart: always
networks:
- opensandbox
volumes:
- /var/run/docker.sock:/var/run/docker.sock # Docker 模式必须挂载,需检查是否与主机的 socket 文件一致
environment:
PORT: 3000
VM_RUNTIME: docker
VM_AUTH_TOKEN: *x-volume-manager-auth-token # 对应 AGENT_SANDBOX_VOLUME_MANAGER_TOKEN
VM_VOLUME_NAME_PREFIX: fastgpt-session # volume 名称前缀
VM_LOG_LEVEL: info
VM_DOCKER_API_VERSION: v1.44
healthcheck:
test:
[
'CMD',
'bun',
'-e',
"fetch('http://localhost:3000/health').then((res) => { if (!res.ok) throw new Error(String(res.status)); })"
]
interval: 10s
timeout: 5s
retries: 5
# AI Proxy # AI Proxy
fastgpt-aiproxy: fastgpt-aiproxy:
image: ghcr.io/labring/aiproxy:v0.5.6 image: ghcr.io/labring/aiproxy:v0.5.8
container_name: fastgpt-aiproxy container_name: fastgpt-aiproxy
restart: unless-stopped restart: unless-stopped
depends_on: depends_on:
...@@ -438,8 +350,6 @@ networks: ...@@ -438,8 +350,6 @@ networks:
name: fastgpt_app name: fastgpt_app
codesandbox: codesandbox:
name: fastgpt_codesandbox name: fastgpt_codesandbox
opensandbox:
name: fastgpt_opensandbox
aiproxy: aiproxy:
name: fastgpt_aiproxy name: fastgpt_aiproxy
...@@ -456,31 +366,3 @@ volumes: ...@@ -456,31 +366,3 @@ volumes:
fastgpt-seekdb-data: fastgpt-seekdb-data:
fastgpt-seekdb-config: fastgpt-seekdb-config:
fastgpt-aiproxy_pg: fastgpt-aiproxy_pg:
configs:
opensandbox-config:
content: |
[server]
host = "0.0.0.0"
port = 8090
log_level = "INFO"
[runtime]
type = "docker"
execd_image = "opensandbox/execd:v1.0.7"
[egress]
image = "opensandbox/egress:v1.0.3"
[docker]
network_mode = "fastgpt_opensandbox"
# When server runs in a container, set host_ip to the host's IP or hostname so bridge-mode endpoints are reachable (e.g. host.docker.internal or the host LAN IP).
# It's required when server deployed with docker container under host.
host_ip = "host.docker.internal"
drop_capabilities = ["AUDIT_WRITE", "MKNOD", "NET_ADMIN", "NET_RAW", "SYS_ADMIN", "SYS_MODULE", "SYS_PTRACE", "SYS_TIME", "SYS_TTY_CONFIG"]
no_new_privileges = true
pids_limit = 512
[ingress]
mode = "direct"
...@@ -11,8 +11,6 @@ x-system-key: &x-system-key 'fastgpt-xxx' ...@@ -11,8 +11,6 @@ x-system-key: &x-system-key 'fastgpt-xxx'
x-plugin-auth-token: &x-plugin-auth-token 'token' x-plugin-auth-token: &x-plugin-auth-token 'token'
# code sandbox token # code sandbox token
x-code-sandbox-token: &x-code-sandbox-token 'codesandbox' x-code-sandbox-token: &x-code-sandbox-token 'codesandbox'
# volume manager auth token
x-volume-manager-auth-token: &x-volume-manager-auth-token 'vmtoken'
# aiproxy token # aiproxy token
x-aiproxy-token: &x-aiproxy-token 'token' x-aiproxy-token: &x-aiproxy-token 'token'
# 数据库连接相关配置 # 数据库连接相关配置
...@@ -43,7 +41,6 @@ x-log-config: &x-log-config ...@@ -43,7 +41,6 @@ x-log-config: &x-log-config
x-vec-config: &x-vec-config x-vec-config: &x-vec-config
SEEKDB_URL: mysql://root:seekdbpassword@fastgpt-vector:2881/mysql SEEKDB_URL: mysql://root:seekdbpassword@fastgpt-vector:2881/mysql
services: services:
# Vector DB # Vector DB
fastgpt-vector: fastgpt-vector:
...@@ -69,7 +66,6 @@ services: ...@@ -69,7 +66,6 @@ services:
timeout: 10s timeout: 10s
retries: 1000 retries: 1000
start_period: 10s start_period: 10s
fastgpt-mongo: fastgpt-mongo:
image: mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29 image: mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29
container_name: fastgpt-mongo container_name: fastgpt-mongo
...@@ -157,14 +153,13 @@ services: ...@@ -157,14 +153,13 @@ services:
fastgpt-app: fastgpt-app:
container_name: fastgpt-app container_name: fastgpt-app
image: ghcr.io/labring/fastgpt:v4.14.20 image: ghcr.io/labring/fastgpt:v4.15.0-beta1
ports: ports:
- 3000:3000 - 3000:3000
networks: networks:
- data - data
- app - app
- codesandbox - codesandbox
- opensandbox
- aiproxy - aiproxy
depends_on: depends_on:
fastgpt-mongo: fastgpt-mongo:
...@@ -215,20 +210,6 @@ services: ...@@ -215,20 +210,6 @@ services:
# AI Proxy 的 Admin Token,与 AI Proxy 中的环境变量 ADMIN_KEY # AI Proxy 的 Admin Token,与 AI Proxy 中的环境变量 ADMIN_KEY
AIPROXY_API_TOKEN: *x-aiproxy-token AIPROXY_API_TOKEN: *x-aiproxy-token
# ==================== Agent sandbox 配置 ====================
AGENT_SANDBOX_PROVIDER: opensandbox
# OpenSandbox 配置(PROVIDER: opensandbox 时生效)
AGENT_SANDBOX_OPENSANDBOX_BASEURL: http://opensandbox-server:8090
AGENT_SANDBOX_OPENSANDBOX_API_KEY:
AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker
AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: ghcr.io/labring/fastgpt-agent-sandbox
AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1
AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true
# Volume 持久化配置(opensandbox provider 下可选)
AGENT_SANDBOX_ENABLE_VOLUME: true
AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000
AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token
# ==================== 日志与监控 ==================== # ==================== 日志与监控 ====================
# 传递给 OTLP 收集器的服务名称 # 传递给 OTLP 收集器的服务名称
LOG_OTEL_SERVICE_NAME: fastgpt-client LOG_OTEL_SERVICE_NAME: fastgpt-client
...@@ -236,7 +217,7 @@ services: ...@@ -236,7 +217,7 @@ services:
- ./config.json:/app/data/config.json - ./config.json:/app/data/config.json
fastgpt-code-sandbox: fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox container_name: fastgpt-code-sandbox
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.20 image: ghcr.io/labring/fastgpt-code-sandbox:v4.15.0-beta1
networks: networks:
- codesandbox - codesandbox
restart: always restart: always
...@@ -285,7 +266,7 @@ services: ...@@ -285,7 +266,7 @@ services:
retries: 3 retries: 3
fastgpt-mcp-server: fastgpt-mcp-server:
container_name: fastgpt-mcp-server container_name: fastgpt-mcp-server
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.20 image: ghcr.io/labring/fastgpt-mcp_server:v4.15.0-beta1
networks: networks:
- app - app
ports: ports:
...@@ -321,79 +302,9 @@ services: ...@@ -321,79 +302,9 @@ services:
timeout: 20s timeout: 20s
retries: 3 retries: 3
# 沙盒控制器:管理 Docker 容器的创建/执行/停止/删除
# runtime=docker 模式需要挂载 Docker socket
# 配置 docker.host_ip 为宿主机 LAN IP(容器内访问宿主机服务用)
opensandbox-server:
image: opensandbox/server:v0.1.9
container_name: fastgpt-opensandbox-server
restart: always
networks:
- opensandbox
extra_hosts:
- 'host.docker.internal:host-gateway'
volumes:
- /var/run/docker.sock:/var/run/docker.sock # Docker 模式必须挂载,需检查是否与主机的 socket 文件一致
configs:
- source: opensandbox-config
target: /etc/opensandbox/config.toml
environment:
SANDBOX_CONFIG_PATH: /etc/opensandbox/config.toml
healthcheck:
test:
[
'CMD',
'python',
'-c',
'import urllib.request,sys; sys.exit(0 if urllib.request.urlopen("http://localhost:8090/health",timeout=3).status==200 else 1)'
]
interval: 10s
timeout: 5s
retries: 5
# Pre-pull only: not started by `docker compose up` (uses profile `prepull`).
opensandbox-agent-sandbox-image:
image: ghcr.io/labring/fastgpt-agent-sandbox:v0.1
profiles:
- prepull
opensandbox-execd-image:
image: opensandbox/execd:v1.0.7
profiles:
- prepull
opensandbox-egress-image:
image: opensandbox/egress:v1.0.3
profiles:
- prepull
# 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC
fastgpt-volume-manager:
image: ghcr.io/labring/fastgpt-agent-volume-manager:v0.1
container_name: fastgpt-volume-manager
restart: always
networks:
- opensandbox
volumes:
- /var/run/docker.sock:/var/run/docker.sock # Docker 模式必须挂载,需检查是否与主机的 socket 文件一致
environment:
PORT: 3000
VM_RUNTIME: docker
VM_AUTH_TOKEN: *x-volume-manager-auth-token # 对应 AGENT_SANDBOX_VOLUME_MANAGER_TOKEN
VM_VOLUME_NAME_PREFIX: fastgpt-session # volume 名称前缀
VM_LOG_LEVEL: info
VM_DOCKER_API_VERSION: v1.44
healthcheck:
test:
[
'CMD',
'bun',
'-e',
"fetch('http://localhost:3000/health').then((res) => { if (!res.ok) throw new Error(String(res.status)); })"
]
interval: 10s
timeout: 5s
retries: 5
# AI Proxy # AI Proxy
fastgpt-aiproxy: fastgpt-aiproxy:
image: ghcr.io/labring/aiproxy:v0.5.6 image: ghcr.io/labring/aiproxy:v0.5.8
container_name: fastgpt-aiproxy container_name: fastgpt-aiproxy
restart: unless-stopped restart: unless-stopped
depends_on: depends_on:
...@@ -444,8 +355,6 @@ networks: ...@@ -444,8 +355,6 @@ networks:
name: fastgpt_app name: fastgpt_app
codesandbox: codesandbox:
name: fastgpt_codesandbox name: fastgpt_codesandbox
opensandbox:
name: fastgpt_opensandbox
aiproxy: aiproxy:
name: fastgpt_aiproxy name: fastgpt_aiproxy
...@@ -462,31 +371,3 @@ volumes: ...@@ -462,31 +371,3 @@ volumes:
fastgpt-seekdb-data: fastgpt-seekdb-data:
fastgpt-seekdb-config: fastgpt-seekdb-config:
fastgpt-aiproxy_pg: fastgpt-aiproxy_pg:
configs:
opensandbox-config:
content: |
[server]
host = "0.0.0.0"
port = 8090
log_level = "INFO"
[runtime]
type = "docker"
execd_image = "opensandbox/execd:v1.0.7"
[egress]
image = "opensandbox/egress:v1.0.3"
[docker]
network_mode = "fastgpt_opensandbox"
# When server runs in a container, set host_ip to the host's IP or hostname so bridge-mode endpoints are reachable (e.g. host.docker.internal or the host LAN IP).
# It's required when server deployed with docker container under host.
host_ip = "host.docker.internal"
drop_capabilities = ["AUDIT_WRITE", "MKNOD", "NET_ADMIN", "NET_RAW", "SYS_ADMIN", "SYS_MODULE", "SYS_PTRACE", "SYS_TIME", "SYS_TTY_CONFIG"]
no_new_privileges = true
pids_limit = 512
[ingress]
mode = "direct"
...@@ -11,8 +11,6 @@ x-system-key: &x-system-key 'fastgpt-xxx' ...@@ -11,8 +11,6 @@ x-system-key: &x-system-key 'fastgpt-xxx'
x-plugin-auth-token: &x-plugin-auth-token 'token' x-plugin-auth-token: &x-plugin-auth-token 'token'
# code sandbox token # code sandbox token
x-code-sandbox-token: &x-code-sandbox-token 'codesandbox' x-code-sandbox-token: &x-code-sandbox-token 'codesandbox'
# volume manager auth token
x-volume-manager-auth-token: &x-volume-manager-auth-token 'vmtoken'
# aiproxy token # aiproxy token
x-aiproxy-token: &x-aiproxy-token 'token' x-aiproxy-token: &x-aiproxy-token 'token'
# 数据库连接相关配置 # 数据库连接相关配置
...@@ -134,14 +132,13 @@ services: ...@@ -134,14 +132,13 @@ services:
fastgpt-app: fastgpt-app:
container_name: fastgpt-app container_name: fastgpt-app
image: ghcr.io/labring/fastgpt:v4.14.20 image: ghcr.io/labring/fastgpt:v4.15.0-beta1
ports: ports:
- 3000:3000 - 3000:3000
networks: networks:
- data - data
- app - app
- codesandbox - codesandbox
- opensandbox
- aiproxy - aiproxy
depends_on: depends_on:
fastgpt-mongo: fastgpt-mongo:
...@@ -192,20 +189,6 @@ services: ...@@ -192,20 +189,6 @@ services:
# AI Proxy 的 Admin Token,与 AI Proxy 中的环境变量 ADMIN_KEY # AI Proxy 的 Admin Token,与 AI Proxy 中的环境变量 ADMIN_KEY
AIPROXY_API_TOKEN: *x-aiproxy-token AIPROXY_API_TOKEN: *x-aiproxy-token
# ==================== Agent sandbox 配置 ====================
AGENT_SANDBOX_PROVIDER: opensandbox
# OpenSandbox 配置(PROVIDER: opensandbox 时生效)
AGENT_SANDBOX_OPENSANDBOX_BASEURL: http://opensandbox-server:8090
AGENT_SANDBOX_OPENSANDBOX_API_KEY:
AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker
AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: ghcr.io/labring/fastgpt-agent-sandbox
AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1
AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true
# Volume 持久化配置(opensandbox provider 下可选)
AGENT_SANDBOX_ENABLE_VOLUME: true
AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000
AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token
# ==================== 日志与监控 ==================== # ==================== 日志与监控 ====================
# 传递给 OTLP 收集器的服务名称 # 传递给 OTLP 收集器的服务名称
LOG_OTEL_SERVICE_NAME: fastgpt-client LOG_OTEL_SERVICE_NAME: fastgpt-client
...@@ -213,7 +196,7 @@ services: ...@@ -213,7 +196,7 @@ services:
- ./config.json:/app/data/config.json - ./config.json:/app/data/config.json
fastgpt-code-sandbox: fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox container_name: fastgpt-code-sandbox
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.20 image: ghcr.io/labring/fastgpt-code-sandbox:v4.15.0-beta1
networks: networks:
- codesandbox - codesandbox
restart: always restart: always
...@@ -262,7 +245,7 @@ services: ...@@ -262,7 +245,7 @@ services:
retries: 3 retries: 3
fastgpt-mcp-server: fastgpt-mcp-server:
container_name: fastgpt-mcp-server container_name: fastgpt-mcp-server
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.20 image: ghcr.io/labring/fastgpt-mcp_server:v4.15.0-beta1
networks: networks:
- app - app
ports: ports:
...@@ -298,79 +281,9 @@ services: ...@@ -298,79 +281,9 @@ services:
timeout: 20s timeout: 20s
retries: 3 retries: 3
# 沙盒控制器:管理 Docker 容器的创建/执行/停止/删除
# runtime=docker 模式需要挂载 Docker socket
# 配置 docker.host_ip 为宿主机 LAN IP(容器内访问宿主机服务用)
opensandbox-server:
image: opensandbox/server:v0.1.9
container_name: fastgpt-opensandbox-server
restart: always
networks:
- opensandbox
extra_hosts:
- 'host.docker.internal:host-gateway'
volumes:
- /var/run/docker.sock:/var/run/docker.sock # Docker 模式必须挂载,需检查是否与主机的 socket 文件一致
configs:
- source: opensandbox-config
target: /etc/opensandbox/config.toml
environment:
SANDBOX_CONFIG_PATH: /etc/opensandbox/config.toml
healthcheck:
test:
[
'CMD',
'python',
'-c',
'import urllib.request,sys; sys.exit(0 if urllib.request.urlopen("http://localhost:8090/health",timeout=3).status==200 else 1)'
]
interval: 10s
timeout: 5s
retries: 5
# Pre-pull only: not started by `docker compose up` (uses profile `prepull`).
opensandbox-agent-sandbox-image:
image: ghcr.io/labring/fastgpt-agent-sandbox:v0.1
profiles:
- prepull
opensandbox-execd-image:
image: opensandbox/execd:v1.0.7
profiles:
- prepull
opensandbox-egress-image:
image: opensandbox/egress:v1.0.3
profiles:
- prepull
# 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC
fastgpt-volume-manager:
image: ghcr.io/labring/fastgpt-agent-volume-manager:v0.1
container_name: fastgpt-volume-manager
restart: always
networks:
- opensandbox
volumes:
- /var/run/docker.sock:/var/run/docker.sock # Docker 模式必须挂载,需检查是否与主机的 socket 文件一致
environment:
PORT: 3000
VM_RUNTIME: docker
VM_AUTH_TOKEN: *x-volume-manager-auth-token # 对应 AGENT_SANDBOX_VOLUME_MANAGER_TOKEN
VM_VOLUME_NAME_PREFIX: fastgpt-session # volume 名称前缀
VM_LOG_LEVEL: info
VM_DOCKER_API_VERSION: v1.44
healthcheck:
test:
[
'CMD',
'bun',
'-e',
"fetch('http://localhost:3000/health').then((res) => { if (!res.ok) throw new Error(String(res.status)); })"
]
interval: 10s
timeout: 5s
retries: 5
# AI Proxy # AI Proxy
fastgpt-aiproxy: fastgpt-aiproxy:
image: ghcr.io/labring/aiproxy:v0.5.6 image: ghcr.io/labring/aiproxy:v0.5.8
container_name: fastgpt-aiproxy container_name: fastgpt-aiproxy
restart: unless-stopped restart: unless-stopped
depends_on: depends_on:
...@@ -421,8 +334,6 @@ networks: ...@@ -421,8 +334,6 @@ networks:
name: fastgpt_app name: fastgpt_app
codesandbox: codesandbox:
name: fastgpt_codesandbox name: fastgpt_codesandbox
opensandbox:
name: fastgpt_opensandbox
aiproxy: aiproxy:
name: fastgpt_aiproxy name: fastgpt_aiproxy
...@@ -439,31 +350,3 @@ volumes: ...@@ -439,31 +350,3 @@ volumes:
fastgpt-seekdb-data: fastgpt-seekdb-data:
fastgpt-seekdb-config: fastgpt-seekdb-config:
fastgpt-aiproxy_pg: fastgpt-aiproxy_pg:
configs:
opensandbox-config:
content: |
[server]
host = "0.0.0.0"
port = 8090
log_level = "INFO"
[runtime]
type = "docker"
execd_image = "opensandbox/execd:v1.0.7"
[egress]
image = "opensandbox/egress:v1.0.3"
[docker]
network_mode = "fastgpt_opensandbox"
# When server runs in a container, set host_ip to the host's IP or hostname so bridge-mode endpoints are reachable (e.g. host.docker.internal or the host LAN IP).
# It's required when server deployed with docker container under host.
host_ip = "host.docker.internal"
drop_capabilities = ["AUDIT_WRITE", "MKNOD", "NET_ADMIN", "NET_RAW", "SYS_ADMIN", "SYS_MODULE", "SYS_PTRACE", "SYS_TIME", "SYS_TTY_CONFIG"]
no_new_privileges = true
pids_limit = 512
[ingress]
mode = "direct"
...@@ -44,7 +44,6 @@ x-vec-config: &x-vec-config ...@@ -44,7 +44,6 @@ x-vec-config: &x-vec-config
MILVUS_ADDRESS: http://fastgpt-vector:19530 MILVUS_ADDRESS: http://fastgpt-vector:19530
MILVUS_TOKEN: none MILVUS_TOKEN: none
services: services:
# Vector DB # Vector DB
fastgpt-milvus-minio: fastgpt-milvus-minio:
...@@ -104,7 +103,6 @@ services: ...@@ -104,7 +103,6 @@ services:
depends_on: depends_on:
- 'fastgpt-milvus-etcd' - 'fastgpt-milvus-etcd'
- 'fastgpt-milvus-minio' - 'fastgpt-milvus-minio'
fastgpt-mongo: fastgpt-mongo:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29
container_name: fastgpt-mongo container_name: fastgpt-mongo
...@@ -192,7 +190,7 @@ services: ...@@ -192,7 +190,7 @@ services:
fastgpt-app: fastgpt-app:
container_name: fastgpt-app container_name: fastgpt-app
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.22
ports: ports:
- 3000:3000 - 3000:3000
networks: networks:
...@@ -257,12 +255,13 @@ services: ...@@ -257,12 +255,13 @@ services:
AGENT_SANDBOX_OPENSANDBOX_API_KEY: AGENT_SANDBOX_OPENSANDBOX_API_KEY:
AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker
AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox
AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1 AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1.2
AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true
# Volume 持久化配置(opensandbox provider 下可选) # Volume 持久化配置(opensandbox provider 下可选)
AGENT_SANDBOX_ENABLE_VOLUME: true AGENT_SANDBOX_ENABLE_VOLUME: true
AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000 AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000
AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token
AGENT_SANDBOX_VOLUME_MANAGER_MOUNT_PATH: /workspace
# ==================== 日志与监控 ==================== # ==================== 日志与监控 ====================
# 传递给 OTLP 收集器的服务名称 # 传递给 OTLP 收集器的服务名称
...@@ -271,7 +270,7 @@ services: ...@@ -271,7 +270,7 @@ services:
- ./config.json:/app/data/config.json - ./config.json:/app/data/config.json
fastgpt-code-sandbox: fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox container_name: fastgpt-code-sandbox
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.22
networks: networks:
- codesandbox - codesandbox
restart: always restart: always
...@@ -320,7 +319,7 @@ services: ...@@ -320,7 +319,7 @@ services:
retries: 3 retries: 3
fastgpt-mcp-server: fastgpt-mcp-server:
container_name: fastgpt-mcp-server container_name: fastgpt-mcp-server
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.22
networks: networks:
- app - app
ports: ports:
...@@ -387,7 +386,7 @@ services: ...@@ -387,7 +386,7 @@ services:
retries: 5 retries: 5
# Pre-pull only: not started by `docker compose up` (uses profile `prepull`). # Pre-pull only: not started by `docker compose up` (uses profile `prepull`).
opensandbox-agent-sandbox-image: opensandbox-agent-sandbox-image:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox:v0.1 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox:v0.1.2
profiles: profiles:
- prepull - prepull
opensandbox-execd-image: opensandbox-execd-image:
...@@ -400,7 +399,7 @@ services: ...@@ -400,7 +399,7 @@ services:
- prepull - prepull
# 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC # 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC
fastgpt-volume-manager: fastgpt-volume-manager:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-volume-manager:v0.1 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-volume-manager:v0.1.2
container_name: fastgpt-volume-manager container_name: fastgpt-volume-manager
restart: always restart: always
networks: networks:
...@@ -428,7 +427,7 @@ services: ...@@ -428,7 +427,7 @@ services:
# AI Proxy # AI Proxy
fastgpt-aiproxy: fastgpt-aiproxy:
image: registry.cn-hangzhou.aliyuncs.com/labring/aiproxy:v0.5.6 image: registry.cn-hangzhou.aliyuncs.com/labring/aiproxy:v0.5.8
container_name: fastgpt-aiproxy container_name: fastgpt-aiproxy
restart: unless-stopped restart: unless-stopped
depends_on: depends_on:
...@@ -524,4 +523,3 @@ configs: ...@@ -524,4 +523,3 @@ configs:
[ingress] [ingress]
mode = "direct" mode = "direct"
...@@ -43,7 +43,6 @@ x-log-config: &x-log-config ...@@ -43,7 +43,6 @@ x-log-config: &x-log-config
x-vec-config: &x-vec-config x-vec-config: &x-vec-config
OCEANBASE_URL: mysql://root%40tenantname:tenantpassword@fastgpt-vector:2881/mysql OCEANBASE_URL: mysql://root%40tenantname:tenantpassword@fastgpt-vector:2881/mysql
services: services:
# Vector DB # Vector DB
fastgpt-vector: fastgpt-vector:
...@@ -82,7 +81,6 @@ services: ...@@ -82,7 +81,6 @@ services:
timeout: 10s timeout: 10s
retries: 1000 retries: 1000
start_period: 10s start_period: 10s
fastgpt-mongo: fastgpt-mongo:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29
container_name: fastgpt-mongo container_name: fastgpt-mongo
...@@ -170,7 +168,7 @@ services: ...@@ -170,7 +168,7 @@ services:
fastgpt-app: fastgpt-app:
container_name: fastgpt-app container_name: fastgpt-app
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.22
ports: ports:
- 3000:3000 - 3000:3000
networks: networks:
...@@ -235,12 +233,13 @@ services: ...@@ -235,12 +233,13 @@ services:
AGENT_SANDBOX_OPENSANDBOX_API_KEY: AGENT_SANDBOX_OPENSANDBOX_API_KEY:
AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker
AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox
AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1 AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1.2
AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true
# Volume 持久化配置(opensandbox provider 下可选) # Volume 持久化配置(opensandbox provider 下可选)
AGENT_SANDBOX_ENABLE_VOLUME: true AGENT_SANDBOX_ENABLE_VOLUME: true
AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000 AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000
AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token
AGENT_SANDBOX_VOLUME_MANAGER_MOUNT_PATH: /workspace
# ==================== 日志与监控 ==================== # ==================== 日志与监控 ====================
# 传递给 OTLP 收集器的服务名称 # 传递给 OTLP 收集器的服务名称
...@@ -249,7 +248,7 @@ services: ...@@ -249,7 +248,7 @@ services:
- ./config.json:/app/data/config.json - ./config.json:/app/data/config.json
fastgpt-code-sandbox: fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox container_name: fastgpt-code-sandbox
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.22
networks: networks:
- codesandbox - codesandbox
restart: always restart: always
...@@ -298,7 +297,7 @@ services: ...@@ -298,7 +297,7 @@ services:
retries: 3 retries: 3
fastgpt-mcp-server: fastgpt-mcp-server:
container_name: fastgpt-mcp-server container_name: fastgpt-mcp-server
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.22
networks: networks:
- app - app
ports: ports:
...@@ -365,7 +364,7 @@ services: ...@@ -365,7 +364,7 @@ services:
retries: 5 retries: 5
# Pre-pull only: not started by `docker compose up` (uses profile `prepull`). # Pre-pull only: not started by `docker compose up` (uses profile `prepull`).
opensandbox-agent-sandbox-image: opensandbox-agent-sandbox-image:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox:v0.1 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox:v0.1.2
profiles: profiles:
- prepull - prepull
opensandbox-execd-image: opensandbox-execd-image:
...@@ -378,7 +377,7 @@ services: ...@@ -378,7 +377,7 @@ services:
- prepull - prepull
# 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC # 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC
fastgpt-volume-manager: fastgpt-volume-manager:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-volume-manager:v0.1 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-volume-manager:v0.1.2
container_name: fastgpt-volume-manager container_name: fastgpt-volume-manager
restart: always restart: always
networks: networks:
...@@ -406,7 +405,7 @@ services: ...@@ -406,7 +405,7 @@ services:
# AI Proxy # AI Proxy
fastgpt-aiproxy: fastgpt-aiproxy:
image: registry.cn-hangzhou.aliyuncs.com/labring/aiproxy:v0.5.6 image: registry.cn-hangzhou.aliyuncs.com/labring/aiproxy:v0.5.8
container_name: fastgpt-aiproxy container_name: fastgpt-aiproxy
restart: unless-stopped restart: unless-stopped
depends_on: depends_on:
...@@ -506,4 +505,3 @@ configs: ...@@ -506,4 +505,3 @@ configs:
name: init_sql name: init_sql
content: | content: |
ALTER SYSTEM SET ob_vector_memory_limit_percentage = 30; ALTER SYSTEM SET ob_vector_memory_limit_percentage = 30;
...@@ -152,7 +152,7 @@ services: ...@@ -152,7 +152,7 @@ services:
fastgpt-app: fastgpt-app:
container_name: fastgpt-app container_name: fastgpt-app
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.22
ports: ports:
- 3000:3000 - 3000:3000
networks: networks:
...@@ -217,12 +217,13 @@ services: ...@@ -217,12 +217,13 @@ services:
AGENT_SANDBOX_OPENSANDBOX_API_KEY: AGENT_SANDBOX_OPENSANDBOX_API_KEY:
AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker
AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox
AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1 AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1.2
AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true
# Volume 持久化配置(opensandbox provider 下可选) # Volume 持久化配置(opensandbox provider 下可选)
AGENT_SANDBOX_ENABLE_VOLUME: true AGENT_SANDBOX_ENABLE_VOLUME: true
AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000 AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000
AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token
AGENT_SANDBOX_VOLUME_MANAGER_MOUNT_PATH: /workspace
# ==================== 日志与监控 ==================== # ==================== 日志与监控 ====================
# 传递给 OTLP 收集器的服务名称 # 传递给 OTLP 收集器的服务名称
...@@ -231,7 +232,7 @@ services: ...@@ -231,7 +232,7 @@ services:
- ./config.json:/app/data/config.json - ./config.json:/app/data/config.json
fastgpt-code-sandbox: fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox container_name: fastgpt-code-sandbox
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.22
networks: networks:
- codesandbox - codesandbox
restart: always restart: always
...@@ -280,7 +281,7 @@ services: ...@@ -280,7 +281,7 @@ services:
retries: 3 retries: 3
fastgpt-mcp-server: fastgpt-mcp-server:
container_name: fastgpt-mcp-server container_name: fastgpt-mcp-server
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.22
networks: networks:
- app - app
ports: ports:
...@@ -347,7 +348,7 @@ services: ...@@ -347,7 +348,7 @@ services:
retries: 5 retries: 5
# Pre-pull only: not started by `docker compose up` (uses profile `prepull`). # Pre-pull only: not started by `docker compose up` (uses profile `prepull`).
opensandbox-agent-sandbox-image: opensandbox-agent-sandbox-image:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox:v0.1 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox:v0.1.2
profiles: profiles:
- prepull - prepull
opensandbox-execd-image: opensandbox-execd-image:
...@@ -360,7 +361,7 @@ services: ...@@ -360,7 +361,7 @@ services:
- prepull - prepull
# 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC # 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC
fastgpt-volume-manager: fastgpt-volume-manager:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-volume-manager:v0.1 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-volume-manager:v0.1.2
container_name: fastgpt-volume-manager container_name: fastgpt-volume-manager
restart: always restart: always
networks: networks:
...@@ -388,7 +389,7 @@ services: ...@@ -388,7 +389,7 @@ services:
# AI Proxy # AI Proxy
fastgpt-aiproxy: fastgpt-aiproxy:
image: registry.cn-hangzhou.aliyuncs.com/labring/aiproxy:v0.5.6 image: registry.cn-hangzhou.aliyuncs.com/labring/aiproxy:v0.5.8
container_name: fastgpt-aiproxy container_name: fastgpt-aiproxy
restart: unless-stopped restart: unless-stopped
depends_on: depends_on:
...@@ -484,4 +485,3 @@ configs: ...@@ -484,4 +485,3 @@ configs:
[ingress] [ingress]
mode = "direct" mode = "direct"
...@@ -63,7 +63,6 @@ services: ...@@ -63,7 +63,6 @@ services:
interval: 5s interval: 5s
timeout: 5s timeout: 5s
retries: 10 retries: 10
fastgpt-mongo: fastgpt-mongo:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29
container_name: fastgpt-mongo container_name: fastgpt-mongo
...@@ -151,7 +150,7 @@ services: ...@@ -151,7 +150,7 @@ services:
fastgpt-app: fastgpt-app:
container_name: fastgpt-app container_name: fastgpt-app
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.22
ports: ports:
- 3000:3000 - 3000:3000
networks: networks:
...@@ -216,12 +215,13 @@ services: ...@@ -216,12 +215,13 @@ services:
AGENT_SANDBOX_OPENSANDBOX_API_KEY: AGENT_SANDBOX_OPENSANDBOX_API_KEY:
AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker
AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox
AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1 AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1.2
AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true
# Volume 持久化配置(opensandbox provider 下可选) # Volume 持久化配置(opensandbox provider 下可选)
AGENT_SANDBOX_ENABLE_VOLUME: true AGENT_SANDBOX_ENABLE_VOLUME: true
AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000 AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000
AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token
AGENT_SANDBOX_VOLUME_MANAGER_MOUNT_PATH: /workspace
# ==================== 日志与监控 ==================== # ==================== 日志与监控 ====================
# 传递给 OTLP 收集器的服务名称 # 传递给 OTLP 收集器的服务名称
...@@ -230,7 +230,7 @@ services: ...@@ -230,7 +230,7 @@ services:
- ./config.json:/app/data/config.json - ./config.json:/app/data/config.json
fastgpt-code-sandbox: fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox container_name: fastgpt-code-sandbox
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.22
networks: networks:
- codesandbox - codesandbox
restart: always restart: always
...@@ -279,7 +279,7 @@ services: ...@@ -279,7 +279,7 @@ services:
retries: 3 retries: 3
fastgpt-mcp-server: fastgpt-mcp-server:
container_name: fastgpt-mcp-server container_name: fastgpt-mcp-server
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.22
networks: networks:
- app - app
ports: ports:
...@@ -346,7 +346,7 @@ services: ...@@ -346,7 +346,7 @@ services:
retries: 5 retries: 5
# Pre-pull only: not started by `docker compose up` (uses profile `prepull`). # Pre-pull only: not started by `docker compose up` (uses profile `prepull`).
opensandbox-agent-sandbox-image: opensandbox-agent-sandbox-image:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox:v0.1 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox:v0.1.2
profiles: profiles:
- prepull - prepull
opensandbox-execd-image: opensandbox-execd-image:
...@@ -359,7 +359,7 @@ services: ...@@ -359,7 +359,7 @@ services:
- prepull - prepull
# 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC # 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC
fastgpt-volume-manager: fastgpt-volume-manager:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-volume-manager:v0.1 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-volume-manager:v0.1.2
container_name: fastgpt-volume-manager container_name: fastgpt-volume-manager
restart: always restart: always
networks: networks:
...@@ -387,7 +387,7 @@ services: ...@@ -387,7 +387,7 @@ services:
# AI Proxy # AI Proxy
fastgpt-aiproxy: fastgpt-aiproxy:
image: registry.cn-hangzhou.aliyuncs.com/labring/aiproxy:v0.5.6 image: registry.cn-hangzhou.aliyuncs.com/labring/aiproxy:v0.5.8
container_name: fastgpt-aiproxy container_name: fastgpt-aiproxy
restart: unless-stopped restart: unless-stopped
depends_on: depends_on:
...@@ -483,4 +483,3 @@ configs: ...@@ -483,4 +483,3 @@ configs:
[ingress] [ingress]
mode = "direct" mode = "direct"
...@@ -43,7 +43,6 @@ x-log-config: &x-log-config ...@@ -43,7 +43,6 @@ x-log-config: &x-log-config
x-vec-config: &x-vec-config x-vec-config: &x-vec-config
SEEKDB_URL: mysql://root:seekdbpassword@fastgpt-vector:2881/mysql SEEKDB_URL: mysql://root:seekdbpassword@fastgpt-vector:2881/mysql
services: services:
# Vector DB # Vector DB
fastgpt-vector: fastgpt-vector:
...@@ -69,7 +68,6 @@ services: ...@@ -69,7 +68,6 @@ services:
timeout: 10s timeout: 10s
retries: 1000 retries: 1000
start_period: 10s start_period: 10s
fastgpt-mongo: fastgpt-mongo:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29
container_name: fastgpt-mongo container_name: fastgpt-mongo
...@@ -157,7 +155,7 @@ services: ...@@ -157,7 +155,7 @@ services:
fastgpt-app: fastgpt-app:
container_name: fastgpt-app container_name: fastgpt-app
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.22
ports: ports:
- 3000:3000 - 3000:3000
networks: networks:
...@@ -222,12 +220,13 @@ services: ...@@ -222,12 +220,13 @@ services:
AGENT_SANDBOX_OPENSANDBOX_API_KEY: AGENT_SANDBOX_OPENSANDBOX_API_KEY:
AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker
AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox
AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1 AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1.2
AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true
# Volume 持久化配置(opensandbox provider 下可选) # Volume 持久化配置(opensandbox provider 下可选)
AGENT_SANDBOX_ENABLE_VOLUME: true AGENT_SANDBOX_ENABLE_VOLUME: true
AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000 AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000
AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token
AGENT_SANDBOX_VOLUME_MANAGER_MOUNT_PATH: /workspace
# ==================== 日志与监控 ==================== # ==================== 日志与监控 ====================
# 传递给 OTLP 收集器的服务名称 # 传递给 OTLP 收集器的服务名称
...@@ -236,7 +235,7 @@ services: ...@@ -236,7 +235,7 @@ services:
- ./config.json:/app/data/config.json - ./config.json:/app/data/config.json
fastgpt-code-sandbox: fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox container_name: fastgpt-code-sandbox
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.22
networks: networks:
- codesandbox - codesandbox
restart: always restart: always
...@@ -285,7 +284,7 @@ services: ...@@ -285,7 +284,7 @@ services:
retries: 3 retries: 3
fastgpt-mcp-server: fastgpt-mcp-server:
container_name: fastgpt-mcp-server container_name: fastgpt-mcp-server
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.22
networks: networks:
- app - app
ports: ports:
...@@ -352,7 +351,7 @@ services: ...@@ -352,7 +351,7 @@ services:
retries: 5 retries: 5
# Pre-pull only: not started by `docker compose up` (uses profile `prepull`). # Pre-pull only: not started by `docker compose up` (uses profile `prepull`).
opensandbox-agent-sandbox-image: opensandbox-agent-sandbox-image:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox:v0.1 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox:v0.1.2
profiles: profiles:
- prepull - prepull
opensandbox-execd-image: opensandbox-execd-image:
...@@ -365,7 +364,7 @@ services: ...@@ -365,7 +364,7 @@ services:
- prepull - prepull
# 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC # 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC
fastgpt-volume-manager: fastgpt-volume-manager:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-volume-manager:v0.1 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-volume-manager:v0.1.2
container_name: fastgpt-volume-manager container_name: fastgpt-volume-manager
restart: always restart: always
networks: networks:
...@@ -393,7 +392,7 @@ services: ...@@ -393,7 +392,7 @@ services:
# AI Proxy # AI Proxy
fastgpt-aiproxy: fastgpt-aiproxy:
image: registry.cn-hangzhou.aliyuncs.com/labring/aiproxy:v0.5.6 image: registry.cn-hangzhou.aliyuncs.com/labring/aiproxy:v0.5.8
container_name: fastgpt-aiproxy container_name: fastgpt-aiproxy
restart: unless-stopped restart: unless-stopped
depends_on: depends_on:
...@@ -489,4 +488,3 @@ configs: ...@@ -489,4 +488,3 @@ configs:
[ingress] [ingress]
mode = "direct" mode = "direct"
...@@ -134,7 +134,7 @@ services: ...@@ -134,7 +134,7 @@ services:
fastgpt-app: fastgpt-app:
container_name: fastgpt-app container_name: fastgpt-app
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.22
ports: ports:
- 3000:3000 - 3000:3000
networks: networks:
...@@ -199,12 +199,13 @@ services: ...@@ -199,12 +199,13 @@ services:
AGENT_SANDBOX_OPENSANDBOX_API_KEY: AGENT_SANDBOX_OPENSANDBOX_API_KEY:
AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker
AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox
AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1 AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1.2
AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true
# Volume 持久化配置(opensandbox provider 下可选) # Volume 持久化配置(opensandbox provider 下可选)
AGENT_SANDBOX_ENABLE_VOLUME: true AGENT_SANDBOX_ENABLE_VOLUME: true
AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000 AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000
AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token
AGENT_SANDBOX_VOLUME_MANAGER_MOUNT_PATH: /workspace
# ==================== 日志与监控 ==================== # ==================== 日志与监控 ====================
# 传递给 OTLP 收集器的服务名称 # 传递给 OTLP 收集器的服务名称
...@@ -213,7 +214,7 @@ services: ...@@ -213,7 +214,7 @@ services:
- ./config.json:/app/data/config.json - ./config.json:/app/data/config.json
fastgpt-code-sandbox: fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox container_name: fastgpt-code-sandbox
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.22
networks: networks:
- codesandbox - codesandbox
restart: always restart: always
...@@ -262,7 +263,7 @@ services: ...@@ -262,7 +263,7 @@ services:
retries: 3 retries: 3
fastgpt-mcp-server: fastgpt-mcp-server:
container_name: fastgpt-mcp-server container_name: fastgpt-mcp-server
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.20 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.22
networks: networks:
- app - app
ports: ports:
...@@ -329,7 +330,7 @@ services: ...@@ -329,7 +330,7 @@ services:
retries: 5 retries: 5
# Pre-pull only: not started by `docker compose up` (uses profile `prepull`). # Pre-pull only: not started by `docker compose up` (uses profile `prepull`).
opensandbox-agent-sandbox-image: opensandbox-agent-sandbox-image:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox:v0.1 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-sandbox:v0.1.2
profiles: profiles:
- prepull - prepull
opensandbox-execd-image: opensandbox-execd-image:
...@@ -342,7 +343,7 @@ services: ...@@ -342,7 +343,7 @@ services:
- prepull - prepull
# 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC # 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC
fastgpt-volume-manager: fastgpt-volume-manager:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-volume-manager:v0.1 image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-agent-volume-manager:v0.1.2
container_name: fastgpt-volume-manager container_name: fastgpt-volume-manager
restart: always restart: always
networks: networks:
...@@ -370,7 +371,7 @@ services: ...@@ -370,7 +371,7 @@ services:
# AI Proxy # AI Proxy
fastgpt-aiproxy: fastgpt-aiproxy:
image: registry.cn-hangzhou.aliyuncs.com/labring/aiproxy:v0.5.6 image: registry.cn-hangzhou.aliyuncs.com/labring/aiproxy:v0.5.8
container_name: fastgpt-aiproxy container_name: fastgpt-aiproxy
restart: unless-stopped restart: unless-stopped
depends_on: depends_on:
...@@ -466,4 +467,3 @@ configs: ...@@ -466,4 +467,3 @@ configs:
[ingress] [ingress]
mode = "direct" mode = "direct"
...@@ -44,7 +44,6 @@ x-vec-config: &x-vec-config ...@@ -44,7 +44,6 @@ x-vec-config: &x-vec-config
MILVUS_ADDRESS: http://fastgpt-vector:19530 MILVUS_ADDRESS: http://fastgpt-vector:19530
MILVUS_TOKEN: none MILVUS_TOKEN: none
services: services:
# Vector DB # Vector DB
fastgpt-milvus-minio: fastgpt-milvus-minio:
...@@ -104,7 +103,6 @@ services: ...@@ -104,7 +103,6 @@ services:
depends_on: depends_on:
- 'fastgpt-milvus-etcd' - 'fastgpt-milvus-etcd'
- 'fastgpt-milvus-minio' - 'fastgpt-milvus-minio'
fastgpt-mongo: fastgpt-mongo:
image: mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29 image: mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29
container_name: fastgpt-mongo container_name: fastgpt-mongo
...@@ -192,7 +190,7 @@ services: ...@@ -192,7 +190,7 @@ services:
fastgpt-app: fastgpt-app:
container_name: fastgpt-app container_name: fastgpt-app
image: ghcr.io/labring/fastgpt:v4.14.20 image: ghcr.io/labring/fastgpt:v4.14.22
ports: ports:
- 3000:3000 - 3000:3000
networks: networks:
...@@ -257,12 +255,13 @@ services: ...@@ -257,12 +255,13 @@ services:
AGENT_SANDBOX_OPENSANDBOX_API_KEY: AGENT_SANDBOX_OPENSANDBOX_API_KEY:
AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker
AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: ghcr.io/labring/fastgpt-agent-sandbox AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: ghcr.io/labring/fastgpt-agent-sandbox
AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1 AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1.2
AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true
# Volume 持久化配置(opensandbox provider 下可选) # Volume 持久化配置(opensandbox provider 下可选)
AGENT_SANDBOX_ENABLE_VOLUME: true AGENT_SANDBOX_ENABLE_VOLUME: true
AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000 AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000
AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token
AGENT_SANDBOX_VOLUME_MANAGER_MOUNT_PATH: /workspace
# ==================== 日志与监控 ==================== # ==================== 日志与监控 ====================
# 传递给 OTLP 收集器的服务名称 # 传递给 OTLP 收集器的服务名称
...@@ -271,7 +270,7 @@ services: ...@@ -271,7 +270,7 @@ services:
- ./config.json:/app/data/config.json - ./config.json:/app/data/config.json
fastgpt-code-sandbox: fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox container_name: fastgpt-code-sandbox
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.20 image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.22
networks: networks:
- codesandbox - codesandbox
restart: always restart: always
...@@ -320,7 +319,7 @@ services: ...@@ -320,7 +319,7 @@ services:
retries: 3 retries: 3
fastgpt-mcp-server: fastgpt-mcp-server:
container_name: fastgpt-mcp-server container_name: fastgpt-mcp-server
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.20 image: ghcr.io/labring/fastgpt-mcp_server:v4.14.22
networks: networks:
- app - app
ports: ports:
...@@ -387,7 +386,7 @@ services: ...@@ -387,7 +386,7 @@ services:
retries: 5 retries: 5
# Pre-pull only: not started by `docker compose up` (uses profile `prepull`). # Pre-pull only: not started by `docker compose up` (uses profile `prepull`).
opensandbox-agent-sandbox-image: opensandbox-agent-sandbox-image:
image: ghcr.io/labring/fastgpt-agent-sandbox:v0.1 image: ghcr.io/labring/fastgpt-agent-sandbox:v0.1.2
profiles: profiles:
- prepull - prepull
opensandbox-execd-image: opensandbox-execd-image:
...@@ -400,7 +399,7 @@ services: ...@@ -400,7 +399,7 @@ services:
- prepull - prepull
# 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC # 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC
fastgpt-volume-manager: fastgpt-volume-manager:
image: ghcr.io/labring/fastgpt-agent-volume-manager:v0.1 image: ghcr.io/labring/fastgpt-agent-volume-manager:v0.1.2
container_name: fastgpt-volume-manager container_name: fastgpt-volume-manager
restart: always restart: always
networks: networks:
...@@ -428,7 +427,7 @@ services: ...@@ -428,7 +427,7 @@ services:
# AI Proxy # AI Proxy
fastgpt-aiproxy: fastgpt-aiproxy:
image: ghcr.io/labring/aiproxy:v0.5.6 image: ghcr.io/labring/aiproxy:v0.5.8
container_name: fastgpt-aiproxy container_name: fastgpt-aiproxy
restart: unless-stopped restart: unless-stopped
depends_on: depends_on:
...@@ -524,4 +523,3 @@ configs: ...@@ -524,4 +523,3 @@ configs:
[ingress] [ingress]
mode = "direct" mode = "direct"
...@@ -43,7 +43,6 @@ x-log-config: &x-log-config ...@@ -43,7 +43,6 @@ x-log-config: &x-log-config
x-vec-config: &x-vec-config x-vec-config: &x-vec-config
OCEANBASE_URL: mysql://root%40tenantname:tenantpassword@fastgpt-vector:2881/mysql OCEANBASE_URL: mysql://root%40tenantname:tenantpassword@fastgpt-vector:2881/mysql
services: services:
# Vector DB # Vector DB
fastgpt-vector: fastgpt-vector:
...@@ -82,7 +81,6 @@ services: ...@@ -82,7 +81,6 @@ services:
timeout: 10s timeout: 10s
retries: 1000 retries: 1000
start_period: 10s start_period: 10s
fastgpt-mongo: fastgpt-mongo:
image: mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29 image: mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29
container_name: fastgpt-mongo container_name: fastgpt-mongo
...@@ -170,7 +168,7 @@ services: ...@@ -170,7 +168,7 @@ services:
fastgpt-app: fastgpt-app:
container_name: fastgpt-app container_name: fastgpt-app
image: ghcr.io/labring/fastgpt:v4.14.20 image: ghcr.io/labring/fastgpt:v4.14.22
ports: ports:
- 3000:3000 - 3000:3000
networks: networks:
...@@ -235,12 +233,13 @@ services: ...@@ -235,12 +233,13 @@ services:
AGENT_SANDBOX_OPENSANDBOX_API_KEY: AGENT_SANDBOX_OPENSANDBOX_API_KEY:
AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker
AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: ghcr.io/labring/fastgpt-agent-sandbox AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: ghcr.io/labring/fastgpt-agent-sandbox
AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1 AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1.2
AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true
# Volume 持久化配置(opensandbox provider 下可选) # Volume 持久化配置(opensandbox provider 下可选)
AGENT_SANDBOX_ENABLE_VOLUME: true AGENT_SANDBOX_ENABLE_VOLUME: true
AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000 AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000
AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token
AGENT_SANDBOX_VOLUME_MANAGER_MOUNT_PATH: /workspace
# ==================== 日志与监控 ==================== # ==================== 日志与监控 ====================
# 传递给 OTLP 收集器的服务名称 # 传递给 OTLP 收集器的服务名称
...@@ -249,7 +248,7 @@ services: ...@@ -249,7 +248,7 @@ services:
- ./config.json:/app/data/config.json - ./config.json:/app/data/config.json
fastgpt-code-sandbox: fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox container_name: fastgpt-code-sandbox
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.20 image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.22
networks: networks:
- codesandbox - codesandbox
restart: always restart: always
...@@ -298,7 +297,7 @@ services: ...@@ -298,7 +297,7 @@ services:
retries: 3 retries: 3
fastgpt-mcp-server: fastgpt-mcp-server:
container_name: fastgpt-mcp-server container_name: fastgpt-mcp-server
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.20 image: ghcr.io/labring/fastgpt-mcp_server:v4.14.22
networks: networks:
- app - app
ports: ports:
...@@ -365,7 +364,7 @@ services: ...@@ -365,7 +364,7 @@ services:
retries: 5 retries: 5
# Pre-pull only: not started by `docker compose up` (uses profile `prepull`). # Pre-pull only: not started by `docker compose up` (uses profile `prepull`).
opensandbox-agent-sandbox-image: opensandbox-agent-sandbox-image:
image: ghcr.io/labring/fastgpt-agent-sandbox:v0.1 image: ghcr.io/labring/fastgpt-agent-sandbox:v0.1.2
profiles: profiles:
- prepull - prepull
opensandbox-execd-image: opensandbox-execd-image:
...@@ -378,7 +377,7 @@ services: ...@@ -378,7 +377,7 @@ services:
- prepull - prepull
# 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC # 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC
fastgpt-volume-manager: fastgpt-volume-manager:
image: ghcr.io/labring/fastgpt-agent-volume-manager:v0.1 image: ghcr.io/labring/fastgpt-agent-volume-manager:v0.1.2
container_name: fastgpt-volume-manager container_name: fastgpt-volume-manager
restart: always restart: always
networks: networks:
...@@ -406,7 +405,7 @@ services: ...@@ -406,7 +405,7 @@ services:
# AI Proxy # AI Proxy
fastgpt-aiproxy: fastgpt-aiproxy:
image: ghcr.io/labring/aiproxy:v0.5.6 image: ghcr.io/labring/aiproxy:v0.5.8
container_name: fastgpt-aiproxy container_name: fastgpt-aiproxy
restart: unless-stopped restart: unless-stopped
depends_on: depends_on:
...@@ -506,4 +505,3 @@ configs: ...@@ -506,4 +505,3 @@ configs:
name: init_sql name: init_sql
content: | content: |
ALTER SYSTEM SET ob_vector_memory_limit_percentage = 30; ALTER SYSTEM SET ob_vector_memory_limit_percentage = 30;
...@@ -152,7 +152,7 @@ services: ...@@ -152,7 +152,7 @@ services:
fastgpt-app: fastgpt-app:
container_name: fastgpt-app container_name: fastgpt-app
image: ghcr.io/labring/fastgpt:v4.14.20 image: ghcr.io/labring/fastgpt:v4.14.22
ports: ports:
- 3000:3000 - 3000:3000
networks: networks:
...@@ -217,12 +217,13 @@ services: ...@@ -217,12 +217,13 @@ services:
AGENT_SANDBOX_OPENSANDBOX_API_KEY: AGENT_SANDBOX_OPENSANDBOX_API_KEY:
AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker
AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: ghcr.io/labring/fastgpt-agent-sandbox AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: ghcr.io/labring/fastgpt-agent-sandbox
AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1 AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1.2
AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true
# Volume 持久化配置(opensandbox provider 下可选) # Volume 持久化配置(opensandbox provider 下可选)
AGENT_SANDBOX_ENABLE_VOLUME: true AGENT_SANDBOX_ENABLE_VOLUME: true
AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000 AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000
AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token
AGENT_SANDBOX_VOLUME_MANAGER_MOUNT_PATH: /workspace
# ==================== 日志与监控 ==================== # ==================== 日志与监控 ====================
# 传递给 OTLP 收集器的服务名称 # 传递给 OTLP 收集器的服务名称
...@@ -231,7 +232,7 @@ services: ...@@ -231,7 +232,7 @@ services:
- ./config.json:/app/data/config.json - ./config.json:/app/data/config.json
fastgpt-code-sandbox: fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox container_name: fastgpt-code-sandbox
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.20 image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.22
networks: networks:
- codesandbox - codesandbox
restart: always restart: always
...@@ -280,7 +281,7 @@ services: ...@@ -280,7 +281,7 @@ services:
retries: 3 retries: 3
fastgpt-mcp-server: fastgpt-mcp-server:
container_name: fastgpt-mcp-server container_name: fastgpt-mcp-server
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.20 image: ghcr.io/labring/fastgpt-mcp_server:v4.14.22
networks: networks:
- app - app
ports: ports:
...@@ -347,7 +348,7 @@ services: ...@@ -347,7 +348,7 @@ services:
retries: 5 retries: 5
# Pre-pull only: not started by `docker compose up` (uses profile `prepull`). # Pre-pull only: not started by `docker compose up` (uses profile `prepull`).
opensandbox-agent-sandbox-image: opensandbox-agent-sandbox-image:
image: ghcr.io/labring/fastgpt-agent-sandbox:v0.1 image: ghcr.io/labring/fastgpt-agent-sandbox:v0.1.2
profiles: profiles:
- prepull - prepull
opensandbox-execd-image: opensandbox-execd-image:
...@@ -360,7 +361,7 @@ services: ...@@ -360,7 +361,7 @@ services:
- prepull - prepull
# 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC # 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC
fastgpt-volume-manager: fastgpt-volume-manager:
image: ghcr.io/labring/fastgpt-agent-volume-manager:v0.1 image: ghcr.io/labring/fastgpt-agent-volume-manager:v0.1.2
container_name: fastgpt-volume-manager container_name: fastgpt-volume-manager
restart: always restart: always
networks: networks:
...@@ -388,7 +389,7 @@ services: ...@@ -388,7 +389,7 @@ services:
# AI Proxy # AI Proxy
fastgpt-aiproxy: fastgpt-aiproxy:
image: ghcr.io/labring/aiproxy:v0.5.6 image: ghcr.io/labring/aiproxy:v0.5.8
container_name: fastgpt-aiproxy container_name: fastgpt-aiproxy
restart: unless-stopped restart: unless-stopped
depends_on: depends_on:
...@@ -484,4 +485,3 @@ configs: ...@@ -484,4 +485,3 @@ configs:
[ingress] [ingress]
mode = "direct" mode = "direct"
...@@ -63,7 +63,6 @@ services: ...@@ -63,7 +63,6 @@ services:
interval: 5s interval: 5s
timeout: 5s timeout: 5s
retries: 10 retries: 10
fastgpt-mongo: fastgpt-mongo:
image: mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29 image: mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29
container_name: fastgpt-mongo container_name: fastgpt-mongo
...@@ -151,7 +150,7 @@ services: ...@@ -151,7 +150,7 @@ services:
fastgpt-app: fastgpt-app:
container_name: fastgpt-app container_name: fastgpt-app
image: ghcr.io/labring/fastgpt:v4.14.20 image: ghcr.io/labring/fastgpt:v4.14.22
ports: ports:
- 3000:3000 - 3000:3000
networks: networks:
...@@ -216,12 +215,13 @@ services: ...@@ -216,12 +215,13 @@ services:
AGENT_SANDBOX_OPENSANDBOX_API_KEY: AGENT_SANDBOX_OPENSANDBOX_API_KEY:
AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker
AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: ghcr.io/labring/fastgpt-agent-sandbox AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: ghcr.io/labring/fastgpt-agent-sandbox
AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1 AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1.2
AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true
# Volume 持久化配置(opensandbox provider 下可选) # Volume 持久化配置(opensandbox provider 下可选)
AGENT_SANDBOX_ENABLE_VOLUME: true AGENT_SANDBOX_ENABLE_VOLUME: true
AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000 AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000
AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token
AGENT_SANDBOX_VOLUME_MANAGER_MOUNT_PATH: /workspace
# ==================== 日志与监控 ==================== # ==================== 日志与监控 ====================
# 传递给 OTLP 收集器的服务名称 # 传递给 OTLP 收集器的服务名称
...@@ -230,7 +230,7 @@ services: ...@@ -230,7 +230,7 @@ services:
- ./config.json:/app/data/config.json - ./config.json:/app/data/config.json
fastgpt-code-sandbox: fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox container_name: fastgpt-code-sandbox
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.20 image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.22
networks: networks:
- codesandbox - codesandbox
restart: always restart: always
...@@ -279,7 +279,7 @@ services: ...@@ -279,7 +279,7 @@ services:
retries: 3 retries: 3
fastgpt-mcp-server: fastgpt-mcp-server:
container_name: fastgpt-mcp-server container_name: fastgpt-mcp-server
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.20 image: ghcr.io/labring/fastgpt-mcp_server:v4.14.22
networks: networks:
- app - app
ports: ports:
...@@ -346,7 +346,7 @@ services: ...@@ -346,7 +346,7 @@ services:
retries: 5 retries: 5
# Pre-pull only: not started by `docker compose up` (uses profile `prepull`). # Pre-pull only: not started by `docker compose up` (uses profile `prepull`).
opensandbox-agent-sandbox-image: opensandbox-agent-sandbox-image:
image: ghcr.io/labring/fastgpt-agent-sandbox:v0.1 image: ghcr.io/labring/fastgpt-agent-sandbox:v0.1.2
profiles: profiles:
- prepull - prepull
opensandbox-execd-image: opensandbox-execd-image:
...@@ -359,7 +359,7 @@ services: ...@@ -359,7 +359,7 @@ services:
- prepull - prepull
# 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC # 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC
fastgpt-volume-manager: fastgpt-volume-manager:
image: ghcr.io/labring/fastgpt-agent-volume-manager:v0.1 image: ghcr.io/labring/fastgpt-agent-volume-manager:v0.1.2
container_name: fastgpt-volume-manager container_name: fastgpt-volume-manager
restart: always restart: always
networks: networks:
...@@ -387,7 +387,7 @@ services: ...@@ -387,7 +387,7 @@ services:
# AI Proxy # AI Proxy
fastgpt-aiproxy: fastgpt-aiproxy:
image: ghcr.io/labring/aiproxy:v0.5.6 image: ghcr.io/labring/aiproxy:v0.5.8
container_name: fastgpt-aiproxy container_name: fastgpt-aiproxy
restart: unless-stopped restart: unless-stopped
depends_on: depends_on:
...@@ -483,4 +483,3 @@ configs: ...@@ -483,4 +483,3 @@ configs:
[ingress] [ingress]
mode = "direct" mode = "direct"
...@@ -43,7 +43,6 @@ x-log-config: &x-log-config ...@@ -43,7 +43,6 @@ x-log-config: &x-log-config
x-vec-config: &x-vec-config x-vec-config: &x-vec-config
SEEKDB_URL: mysql://root:seekdbpassword@fastgpt-vector:2881/mysql SEEKDB_URL: mysql://root:seekdbpassword@fastgpt-vector:2881/mysql
services: services:
# Vector DB # Vector DB
fastgpt-vector: fastgpt-vector:
...@@ -69,7 +68,6 @@ services: ...@@ -69,7 +68,6 @@ services:
timeout: 10s timeout: 10s
retries: 1000 retries: 1000
start_period: 10s start_period: 10s
fastgpt-mongo: fastgpt-mongo:
image: mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29 image: mongo:5.0.32 # cpu 不支持 AVX 时候使用 4.4.29
container_name: fastgpt-mongo container_name: fastgpt-mongo
...@@ -157,7 +155,7 @@ services: ...@@ -157,7 +155,7 @@ services:
fastgpt-app: fastgpt-app:
container_name: fastgpt-app container_name: fastgpt-app
image: ghcr.io/labring/fastgpt:v4.14.20 image: ghcr.io/labring/fastgpt:v4.14.22
ports: ports:
- 3000:3000 - 3000:3000
networks: networks:
...@@ -222,12 +220,13 @@ services: ...@@ -222,12 +220,13 @@ services:
AGENT_SANDBOX_OPENSANDBOX_API_KEY: AGENT_SANDBOX_OPENSANDBOX_API_KEY:
AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker
AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: ghcr.io/labring/fastgpt-agent-sandbox AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: ghcr.io/labring/fastgpt-agent-sandbox
AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1 AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1.2
AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true
# Volume 持久化配置(opensandbox provider 下可选) # Volume 持久化配置(opensandbox provider 下可选)
AGENT_SANDBOX_ENABLE_VOLUME: true AGENT_SANDBOX_ENABLE_VOLUME: true
AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000 AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000
AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token
AGENT_SANDBOX_VOLUME_MANAGER_MOUNT_PATH: /workspace
# ==================== 日志与监控 ==================== # ==================== 日志与监控 ====================
# 传递给 OTLP 收集器的服务名称 # 传递给 OTLP 收集器的服务名称
...@@ -236,7 +235,7 @@ services: ...@@ -236,7 +235,7 @@ services:
- ./config.json:/app/data/config.json - ./config.json:/app/data/config.json
fastgpt-code-sandbox: fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox container_name: fastgpt-code-sandbox
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.20 image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.22
networks: networks:
- codesandbox - codesandbox
restart: always restart: always
...@@ -285,7 +284,7 @@ services: ...@@ -285,7 +284,7 @@ services:
retries: 3 retries: 3
fastgpt-mcp-server: fastgpt-mcp-server:
container_name: fastgpt-mcp-server container_name: fastgpt-mcp-server
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.20 image: ghcr.io/labring/fastgpt-mcp_server:v4.14.22
networks: networks:
- app - app
ports: ports:
...@@ -352,7 +351,7 @@ services: ...@@ -352,7 +351,7 @@ services:
retries: 5 retries: 5
# Pre-pull only: not started by `docker compose up` (uses profile `prepull`). # Pre-pull only: not started by `docker compose up` (uses profile `prepull`).
opensandbox-agent-sandbox-image: opensandbox-agent-sandbox-image:
image: ghcr.io/labring/fastgpt-agent-sandbox:v0.1 image: ghcr.io/labring/fastgpt-agent-sandbox:v0.1.2
profiles: profiles:
- prepull - prepull
opensandbox-execd-image: opensandbox-execd-image:
...@@ -365,7 +364,7 @@ services: ...@@ -365,7 +364,7 @@ services:
- prepull - prepull
# 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC # 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC
fastgpt-volume-manager: fastgpt-volume-manager:
image: ghcr.io/labring/fastgpt-agent-volume-manager:v0.1 image: ghcr.io/labring/fastgpt-agent-volume-manager:v0.1.2
container_name: fastgpt-volume-manager container_name: fastgpt-volume-manager
restart: always restart: always
networks: networks:
...@@ -393,7 +392,7 @@ services: ...@@ -393,7 +392,7 @@ services:
# AI Proxy # AI Proxy
fastgpt-aiproxy: fastgpt-aiproxy:
image: ghcr.io/labring/aiproxy:v0.5.6 image: ghcr.io/labring/aiproxy:v0.5.8
container_name: fastgpt-aiproxy container_name: fastgpt-aiproxy
restart: unless-stopped restart: unless-stopped
depends_on: depends_on:
...@@ -489,4 +488,3 @@ configs: ...@@ -489,4 +488,3 @@ configs:
[ingress] [ingress]
mode = "direct" mode = "direct"
...@@ -134,7 +134,7 @@ services: ...@@ -134,7 +134,7 @@ services:
fastgpt-app: fastgpt-app:
container_name: fastgpt-app container_name: fastgpt-app
image: ghcr.io/labring/fastgpt:v4.14.20 image: ghcr.io/labring/fastgpt:v4.14.22
ports: ports:
- 3000:3000 - 3000:3000
networks: networks:
...@@ -199,12 +199,13 @@ services: ...@@ -199,12 +199,13 @@ services:
AGENT_SANDBOX_OPENSANDBOX_API_KEY: AGENT_SANDBOX_OPENSANDBOX_API_KEY:
AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker AGENT_SANDBOX_OPENSANDBOX_RUNTIME: docker
AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: ghcr.io/labring/fastgpt-agent-sandbox AGENT_SANDBOX_OPENSANDBOX_IMAGE_REPO: ghcr.io/labring/fastgpt-agent-sandbox
AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1 AGENT_SANDBOX_OPENSANDBOX_IMAGE_TAG: v0.1.2
AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true AGENT_SANDBOX_OPENSANDBOX_USE_SERVER_PROXY: true
# Volume 持久化配置(opensandbox provider 下可选) # Volume 持久化配置(opensandbox provider 下可选)
AGENT_SANDBOX_ENABLE_VOLUME: true AGENT_SANDBOX_ENABLE_VOLUME: true
AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000 AGENT_SANDBOX_VOLUME_MANAGER_URL: http://fastgpt-volume-manager:3000
AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token AGENT_SANDBOX_VOLUME_MANAGER_TOKEN: *x-volume-manager-auth-token
AGENT_SANDBOX_VOLUME_MANAGER_MOUNT_PATH: /workspace
# ==================== 日志与监控 ==================== # ==================== 日志与监控 ====================
# 传递给 OTLP 收集器的服务名称 # 传递给 OTLP 收集器的服务名称
...@@ -213,7 +214,7 @@ services: ...@@ -213,7 +214,7 @@ services:
- ./config.json:/app/data/config.json - ./config.json:/app/data/config.json
fastgpt-code-sandbox: fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox container_name: fastgpt-code-sandbox
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.20 image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.22
networks: networks:
- codesandbox - codesandbox
restart: always restart: always
...@@ -262,7 +263,7 @@ services: ...@@ -262,7 +263,7 @@ services:
retries: 3 retries: 3
fastgpt-mcp-server: fastgpt-mcp-server:
container_name: fastgpt-mcp-server container_name: fastgpt-mcp-server
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.20 image: ghcr.io/labring/fastgpt-mcp_server:v4.14.22
networks: networks:
- app - app
ports: ports:
...@@ -329,7 +330,7 @@ services: ...@@ -329,7 +330,7 @@ services:
retries: 5 retries: 5
# Pre-pull only: not started by `docker compose up` (uses profile `prepull`). # Pre-pull only: not started by `docker compose up` (uses profile `prepull`).
opensandbox-agent-sandbox-image: opensandbox-agent-sandbox-image:
image: ghcr.io/labring/fastgpt-agent-sandbox:v0.1 image: ghcr.io/labring/fastgpt-agent-sandbox:v0.1.2
profiles: profiles:
- prepull - prepull
opensandbox-execd-image: opensandbox-execd-image:
...@@ -342,7 +343,7 @@ services: ...@@ -342,7 +343,7 @@ services:
- prepull - prepull
# 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC # 卷管理微服务:负责幂等创建/删除 Docker named volume 或 k8s PVC
fastgpt-volume-manager: fastgpt-volume-manager:
image: ghcr.io/labring/fastgpt-agent-volume-manager:v0.1 image: ghcr.io/labring/fastgpt-agent-volume-manager:v0.1.2
container_name: fastgpt-volume-manager container_name: fastgpt-volume-manager
restart: always restart: always
networks: networks:
...@@ -370,7 +371,7 @@ services: ...@@ -370,7 +371,7 @@ services:
# AI Proxy # AI Proxy
fastgpt-aiproxy: fastgpt-aiproxy:
image: ghcr.io/labring/aiproxy:v0.5.6 image: ghcr.io/labring/aiproxy:v0.5.8
container_name: fastgpt-aiproxy container_name: fastgpt-aiproxy
restart: unless-stopped restart: unless-stopped
depends_on: depends_on:
...@@ -466,4 +467,3 @@ configs: ...@@ -466,4 +467,3 @@ configs:
[ingress] [ingress]
mode = "direct" mode = "direct"
...@@ -57,14 +57,70 @@ radio_select() { ...@@ -57,14 +57,70 @@ radio_select() {
# 确保退出时恢复光标 # 确保退出时恢复光标
trap 'tput cnorm 2>/dev/null; exit' INT TERM trap 'tput cnorm 2>/dev/null; exit' INT TERM
# ========== 部署版本列表(由 deploy/init.mjs 自动生成) ==========
# BEGIN GENERATED DEPLOY VERSIONS
DEPLOY_VERSIONS=(
"v4.14"
"main"
)
# END GENERATED DEPLOY VERSIONS
# 获取部署版本展示文案:main 为迭代版,其他版本均视为稳定版
get_version_label() {
local version="$1"
if [ "$version" == "main" ]; then
echo "迭代版 main"
else
echo "稳定版 $version"
fi
}
# ========== 1. 选择镜像源 ========== # ========== 1. 选择镜像源 ==========
radio_select "请选择镜像源 (↑↓ 选择, 回车确认):" "阿里云 (中国大陆)" "GitHub (全球)" radio_select "请选择镜像源 (↑↓ 选择, 回车确认):" "阿里云 (中国大陆)" "GitHub (全球)"
case $RADIO_RESULT in case $RADIO_RESULT in
1) REGION="global" ;; 1)
*) REGION="cn" ;; REGION="global"
BASE_URL="https://doc.fastgpt.io/deploy"
;;
*)
REGION="cn"
BASE_URL="https://doc.fastgpt.cn/deploy"
;;
esac esac
# ========== 2. 选择向量数据库 ========== # ========== 2. 选择部署版本 ==========
if [ ${#DEPLOY_VERSIONS[@]} -eq 0 ]; then
echo "错误: 未配置部署版本"
exit 1
fi
if [ -n "$FASTGPT_DEPLOY_VERSION" ]; then
version_matched=false
for version in "${DEPLOY_VERSIONS[@]}"; do
if [ "$FASTGPT_DEPLOY_VERSION" == "$version" ]; then
version_matched=true
break
fi
done
if [ "$version_matched" = true ]; then
DEPLOY_VERSION="$FASTGPT_DEPLOY_VERSION"
else
echo "错误: 不支持的 FASTGPT_DEPLOY_VERSION: $FASTGPT_DEPLOY_VERSION"
echo "可选版本: ${DEPLOY_VERSIONS[*]}"
exit 1
fi
else
VERSION_OPTIONS=()
for version in "${DEPLOY_VERSIONS[@]}"; do
VERSION_OPTIONS+=("$(get_version_label "$version")")
done
radio_select "请选择部署版本 (↑↓ 选择, 回车确认):" "${VERSION_OPTIONS[@]}"
DEPLOY_VERSION="${DEPLOY_VERSIONS[$RADIO_RESULT]}"
fi
# ========== 3. 选择向量数据库 ==========
radio_select "请选择向量数据库 (↑↓ 选择, 回车确认):" "PostgreSQL + pgvector" "Milvus" "Zilliz" "OceanBase" "SeekDB" radio_select "请选择向量数据库 (↑↓ 选择, 回车确认):" "PostgreSQL + pgvector" "Milvus" "Zilliz" "OceanBase" "SeekDB"
case $RADIO_RESULT in case $RADIO_RESULT in
1) VECTOR="milvus" ;; 1) VECTOR="milvus" ;;
...@@ -74,7 +130,7 @@ case $RADIO_RESULT in ...@@ -74,7 +130,7 @@ case $RADIO_RESULT in
*) VECTOR="pg" ;; *) VECTOR="pg" ;;
esac esac
# ========== 3. 检测可用 IP ========== # ========== 4. 检测可用 IP ==========
IP_LIST=() IP_LIST=()
PRIMARY_IP="" PRIMARY_IP=""
...@@ -152,17 +208,19 @@ select_address() { ...@@ -152,17 +208,19 @@ select_address() {
fi fi
} }
# ========== 4. 选择 S3 访问地址 (端口 9000) ========== # ========== 5. 选择 S3 访问地址 (端口 9000) ==========
select_address "请选择 S3 访问地址 - 客户端和容器均需可访问 (↑↓ 选择, 回车确认, 通常默认第一个即可):" 9000 select_address "请选择 S3 访问地址 - 客户端和容器均需可访问 (↑↓ 选择, 回车确认, 通常默认第一个即可):" 9000
S3_ADDR="$SELECTED_ADDR" S3_ADDR="$SELECTED_ADDR"
S3_CUSTOM=$SELECTED_CUSTOM S3_CUSTOM=$SELECTED_CUSTOM
# ========== 5. 选择 SSE MCP 访问地址 (端口 3003) ========== # ========== 6. 选择 SSE MCP 访问地址 (端口 3003) ==========
select_address "请选择 SSE MCP 访问地址 - 客户端和容器均需可访问 (↑↓ 选择, 回车确认, 通常默认第一个即可):" 3003 select_address "请选择 SSE MCP 访问地址 - 客户端和容器均需可访问 (↑↓ 选择, 回车确认, 通常默认第一个即可):" 3003
MCP_ADDR="$SELECTED_ADDR" MCP_ADDR="$SELECTED_ADDR"
MCP_CUSTOM=$SELECTED_CUSTOM MCP_CUSTOM=$SELECTED_CUSTOM
# ========== 确认配置 ========== # ========== 确认配置 ==========
DEPLOY_VERSION_LABEL="$(get_version_label "$DEPLOY_VERSION")"
REGION_LABEL="阿里云 (中国大陆)" REGION_LABEL="阿里云 (中国大陆)"
if [ "$REGION" == "global" ]; then if [ "$REGION" == "global" ]; then
REGION_LABEL="GitHub (全球)" REGION_LABEL="GitHub (全球)"
...@@ -191,6 +249,7 @@ fi ...@@ -191,6 +249,7 @@ fi
echo "" echo ""
echo "==============================" echo "=============================="
echo " 部署版本: $DEPLOY_VERSION_LABEL"
echo " 镜像源: $REGION_LABEL" echo " 镜像源: $REGION_LABEL"
echo " 向量数据库: $VECTOR" echo " 向量数据库: $VECTOR"
echo " S3 地址: $S3_DISPLAY" echo " S3 地址: $S3_DISPLAY"
...@@ -213,13 +272,7 @@ if [ "$REGION" == "global" ] && [ "$VECTOR" == "zilliz" ]; then ...@@ -213,13 +272,7 @@ if [ "$REGION" == "global" ] && [ "$VECTOR" == "zilliz" ]; then
VECTOR_FILE="zilliz" VECTOR_FILE="zilliz"
fi fi
if [ "$REGION" == "cn" ]; then YML_URL="${BASE_URL}/docker/${DEPLOY_VERSION}/${REGION}/docker-compose.${VECTOR_FILE}.yml"
BASE_URL="https://doc.fastgpt.cn/deploy"
YML_URL="${BASE_URL}/docker/cn/docker-compose.${VECTOR_FILE}.yml"
else
BASE_URL="https://doc.fastgpt.io/deploy"
YML_URL="${BASE_URL}/docker/global/docker-compose.${VECTOR_FILE}.yml"
fi
CONFIG_URL="${BASE_URL}/config/config.json" CONFIG_URL="${BASE_URL}/config/config.json"
...@@ -316,10 +369,11 @@ else ...@@ -316,10 +369,11 @@ else
echo "警告: 未设置 MCP 地址,请手动编辑 config.json 中的 mcpServerProxyEndpoint" echo "警告: 未设置 MCP 地址,请手动编辑 config.json 中的 mcpServerProxyEndpoint"
fi fi
# ========== 检测并替换 docker.sock 路径 ========== if [ "$DEPLOY_VERSION" != "main" ]; then
# 某些发行版 / Docker Desktop / rootless 模式下,宿主机 docker.sock 不在 /var/run/docker.sock # ========== 检测并替换 docker.sock 路径 ==========
# 若路径错误,Docker 会把挂载目标在容器内创建为空目录,导致 volume-manager / opensandbox 无法调用 Docker API # 某些发行版 / Docker Desktop / rootless 模式下,宿主机 docker.sock 不在 /var/run/docker.sock
detect_docker_sock() { # 若路径错误,Docker 会把挂载目标在容器内创建为空目录,导致 volume-manager / opensandbox 无法调用 Docker API
detect_docker_sock() {
# 1. DOCKER_HOST 环境变量 # 1. DOCKER_HOST 环境变量
if [ -n "$DOCKER_HOST" ] && [[ "$DOCKER_HOST" == unix://* ]]; then if [ -n "$DOCKER_HOST" ] && [[ "$DOCKER_HOST" == unix://* ]]; then
local sock="${DOCKER_HOST#unix://}" local sock="${DOCKER_HOST#unix://}"
...@@ -349,10 +403,10 @@ detect_docker_sock() { ...@@ -349,10 +403,10 @@ detect_docker_sock() {
done done
return 1 return 1
} }
HOST_SOCK=$(detect_docker_sock) HOST_SOCK=$(detect_docker_sock)
if [ -n "$HOST_SOCK" ]; then if [ -n "$HOST_SOCK" ]; then
if [ "$HOST_SOCK" != "/var/run/docker.sock" ]; then if [ "$HOST_SOCK" != "/var/run/docker.sock" ]; then
# 只改宿主侧路径(冒号左边),容器内仍为 /var/run/docker.sock # 只改宿主侧路径(冒号左边),容器内仍为 /var/run/docker.sock
ESCAPED_SOCK=$(printf '%s' "$HOST_SOCK" | sed -e 's/[\/&|]/\\&/g') ESCAPED_SOCK=$(printf '%s' "$HOST_SOCK" | sed -e 's/[\/&|]/\\&/g')
...@@ -365,20 +419,29 @@ if [ -n "$HOST_SOCK" ]; then ...@@ -365,20 +419,29 @@ if [ -n "$HOST_SOCK" ]; then
else else
echo "Docker socket 路径正常: /var/run/docker.sock" echo "Docker socket 路径正常: /var/run/docker.sock"
fi fi
else else
echo "警告: 未检测到 Docker socket。请确认 Docker 正在运行," echo "警告: 未检测到 Docker socket。请确认 Docker 正在运行,"
echo " 并手动编辑 docker-compose.yml,将两处 '- /var/run/docker.sock:/var/run/docker.sock'" echo " 并手动编辑 docker-compose.yml,将两处 '- /var/run/docker.sock:/var/run/docker.sock'"
echo " 左侧改成宿主机实际的 socket 路径。" echo " 左侧改成宿主机实际的 socket 路径。"
fi
fi fi
# ========== 完成 ========== # ========== 完成 ==========
echo "" echo ""
echo "配置下载成功! 后续操作:" echo "配置下载成功! 后续操作:"
echo " 1. 预热沙盒: docker compose --profile prepull pull opensandbox-agent-sandbox-image opensandbox-execd-image opensandbox-egress-image" if [ "$DEPLOY_VERSION" != "main" ]; then
echo " 2. 启动服务: docker compose up -d" echo " 1. 预热沙盒: docker compose --profile prepull pull opensandbox-agent-sandbox-image opensandbox-execd-image opensandbox-egress-image"
echo " 3. 开放端口: 3000, 9000, 3003" echo " 2. 启动服务: docker compose up -d"
echo " 4. 访问服务: http://localhost:3000" echo " 3. 开放端口: 3000, 9000, 3003"
echo " 5. 登录服务: 默认账号为 'root', 密码为: '1234'" echo " 4. 访问服务: http://localhost:3000"
echo " 6. 配置模型: 在 '账号-模型提供商' 页面,进行模型配置" echo " 5. 登录服务: 默认账号为 'root', 密码为: '1234'"
echo " 6. 配置模型: 在 '账号-模型提供商' 页面,进行模型配置"
else
echo " 1. 启动服务: docker compose up -d"
echo " 2. 开放端口: 3000, 9000, 3003"
echo " 3. 访问服务: http://localhost:3000"
echo " 4. 登录服务: 默认账号为 'root', 密码为: '1234'"
echo " 5. 配置模型: 在 '账号-模型提供商' 页面,进行模型配置"
fi
echo "" echo ""
echo "详细文档: https://doc.fastgpt.cn/self-host/deploy/docker" echo "详细文档: https://doc.fastgpt.cn/self-host/deploy/docker"
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment