迁移网关
This commit is contained in:
+1
-1
@@ -43,7 +43,7 @@ async def ai_lab():
|
|||||||
app = FastAPI(title="BBIT_AI", lifespan=lifespan)
|
app = FastAPI(title="BBIT_AI", lifespan=lifespan)
|
||||||
origins = [
|
origins = [
|
||||||
"http://localhost:8091", # Vite dev 默认端口
|
"http://localhost:8091", # Vite dev 默认端口
|
||||||
"https://ai.ronsunny.cn:8090",
|
"https://ai.bbitcn.net",
|
||||||
"*", # ⚠️ 生产环境不要用
|
"*", # ⚠️ 生产环境不要用
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|||||||
@@ -17,8 +17,8 @@ from routers.Iot import pending_commands
|
|||||||
from routers.WS import ws_manager
|
from routers.WS import ws_manager
|
||||||
|
|
||||||
# ================= 配置区域 =================
|
# ================= 配置区域 =================
|
||||||
MQTT_BROKER = "ai.ronsunny.cn"
|
MQTT_BROKER = "mqtt.bbitcn.net"
|
||||||
MQTT_PORT = 8093
|
MQTT_PORT = 8883
|
||||||
MQTT_PASSWORD = "123456"
|
MQTT_PASSWORD = "123456"
|
||||||
TLS_CONTEXT = ssl.create_default_context()
|
TLS_CONTEXT = ssl.create_default_context()
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ from minio.commonconfig import CopySource
|
|||||||
|
|
||||||
# MinIO 客户端初始化
|
# MinIO 客户端初始化
|
||||||
minio_client = Minio(
|
minio_client = Minio(
|
||||||
"ai.ronsunny.cn:9000",
|
"storage.bbitcn.net",
|
||||||
access_key="minioadmin",
|
access_key="minioadmin",
|
||||||
secret_key="minioadmin",
|
secret_key="minioadmin",
|
||||||
region="Chengdu",
|
region="Chengdu",
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
version_code: 27
|
version_code: 29
|
||||||
pid: 29412
|
pid: 36856
|
||||||
need_update: false
|
need_update: false
|
||||||
control_state: CONTROL_LOST
|
control_state: CONTROL_LOST
|
||||||
last_alive_at: 1771987569
|
last_alive_at: 1781077623
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,5 +1,5 @@
|
|||||||
version_code: 27
|
version_code: 29
|
||||||
pid: 24516
|
pid: 10956
|
||||||
need_update: false
|
need_update: false
|
||||||
control_state: CONNECTED
|
control_state: CONNECTED
|
||||||
last_alive_at: 1771987537
|
last_alive_at: 1781081105
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
@@ -13,17 +13,17 @@ const (
|
|||||||
// 版本号
|
// 版本号
|
||||||
APP_VERSION = 29
|
APP_VERSION = 29
|
||||||
|
|
||||||
BASE_URL = "https://ai.ronsunny.cn:8090"
|
BASE_URL = "https://ai.bbitcn.net"
|
||||||
//BASE_URL = "http://127.0.0.1:13011"
|
//BASE_URL = "http://127.0.0.1:13011"
|
||||||
LOG_FILE_DIC = "./logs"
|
LOG_FILE_DIC = "./logs"
|
||||||
LOG_CHECK_INTERVAL_HOURS = 10 // 文件轮询检查间隔(秒)
|
LOG_CHECK_INTERVAL_HOURS = 10 // 文件轮询检查间隔(秒)
|
||||||
MQTT_BROKER = "tls://ai.ronsunny.cn:8093"
|
MQTT_BROKER = "ssl://mqtt.bbitcn.net:8883"
|
||||||
PASSWORD = "123456"
|
PASSWORD = "123456"
|
||||||
|
|
||||||
DOCKER_REGISTRY = "ai.ronsunny.cn:13011"
|
DOCKER_REGISTRY = "docker.bbitcn.net"
|
||||||
DOCKER_USERNAME = "iot_device"
|
DOCKER_USERNAME = "iot_device"
|
||||||
DOCKER_PASSWORD = "Bbit000000"
|
DOCKER_PASSWORD = "Bbit000000"
|
||||||
DOCKER_IMAGE = "ai.ronsunny.cn:13011/bbit_iot/ce_sentinel"
|
DOCKER_IMAGE = "docker.bbitcn.net/bbit_iot/ce_sentinel"
|
||||||
DOCKER_CONTAINER_NAME = "BBIT_Project"
|
DOCKER_CONTAINER_NAME = "BBIT_Project"
|
||||||
DOCKER_TIME_OUT = 30 * time.Second
|
DOCKER_TIME_OUT = 30 * time.Second
|
||||||
|
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ const val VIDEO_INPUT_PATH = "C:/tmp/"
|
|||||||
* 服务器地址
|
* 服务器地址
|
||||||
* ADB 秦朗FRP地址
|
* ADB 秦朗FRP地址
|
||||||
*/
|
*/
|
||||||
const val SERVER_PATH_FRP = "s3.ronsunny.cn" // 171.212.101.201
|
const val SERVER_PATH_FRP = "171.212.101.201" // s3.ronsunny.cn
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 局域网IP 用于连接PostgreSQL和Radis
|
* 局域网IP 用于连接PostgreSQL和Radis
|
||||||
|
|||||||
@@ -13,7 +13,6 @@ fun Application.configureCORS() {
|
|||||||
anyHost()
|
anyHost()
|
||||||
allowHost("localhost:8089")
|
allowHost("localhost:8089")
|
||||||
allowHost("127.0.0.1:8089")
|
allowHost("127.0.0.1:8089")
|
||||||
allowHost("ai.ronsunny.cn:8089")
|
|
||||||
|
|
||||||
// 进一步配置 CORS
|
// 进一步配置 CORS
|
||||||
allowMethod(HttpMethod.Get)
|
allowMethod(HttpMethod.Get)
|
||||||
|
|||||||
@@ -30,8 +30,8 @@ ktor:
|
|||||||
password: "7ZYPc75xCViqSrCg"
|
password: "7ZYPc75xCViqSrCg"
|
||||||
|
|
||||||
oss:
|
oss:
|
||||||
endpoint: "ai.ronsunny.cn"
|
endpoint: "storage.bbitcn.net"
|
||||||
port: 9000
|
port: 443
|
||||||
secure: true
|
secure: true
|
||||||
region: "Chengdu"
|
region: "Chengdu"
|
||||||
access-key: "minioadmin"
|
access-key: "minioadmin"
|
||||||
|
|||||||
@@ -13,12 +13,12 @@
|
|||||||
- 开发语言:**Java/Kotlin**
|
- 开发语言:**Java/Kotlin**
|
||||||
- **FastAPI**:实验室AI模块后端程序
|
- **FastAPI**:实验室AI模块后端程序
|
||||||
- 开发语言:**Python**
|
- 开发语言:**Python**
|
||||||
- **RabbitMQ**:消息队列
|
|
||||||
|
|
||||||
- ### 中间件
|
- ### 中间件
|
||||||
|
|
||||||
- 牧安云哨IoT中间件
|
- 牧安云哨IoT中间件
|
||||||
- 开发语言:**Go**
|
- 开发语言:**Go**
|
||||||
|
- **RabbitMQ**:消息队列
|
||||||
|
|
||||||
- ### 人工智能
|
- ### 人工智能
|
||||||
|
|
||||||
@@ -53,406 +53,46 @@
|
|||||||
- **树莓派**:Raspberry Pi 5 16G
|
- **树莓派**:Raspberry Pi 5 16G
|
||||||
- **Jetson**:NVIDIA Jetson Nano 8G
|
- **Jetson**:NVIDIA Jetson Nano 8G
|
||||||
|
|
||||||
|
## 二、服务分布
|
||||||
## 二、端口使用
|
|
||||||
|
- 网关服务器
|
||||||
| 键 | 值 |
|
- 公网IP:116.198.221.236
|
||||||
| ------------------------- | --------------- |
|
- 内网IP:10.1.5.101
|
||||||
| **公网域名** | ai.ronsunny.cn |
|
- ssh端口:22000
|
||||||
| **公网IP** | 171.212.101.200 |
|
- 账号:root
|
||||||
| **内网地址** | 10.10.12.101 |
|
- 显卡服务器
|
||||||
| **虚拟机管理地址**,root: | 10.10.12.100 |
|
- 内网IP:10.10.12.101
|
||||||
|
|
||||||
| 协议 | 公网端口 | 内网端口 | docker端口 | docker服务/Host | 技术栈 | 功能作用 |
|
| 域名x.bbitcn.net | 对外 | 对内 | 内网端口 | docker端口 | Docker服务名/Host | 技术栈 | 功能作用 |
|
||||||
| ----- | --------- | -------- | ---------- | -------------------- | -------------------- | ------------------------------------------ |
|
| ---------------- | ----------- | ----------- | -------- | ---------- | ----------------- | ---------- | ---------------------------------------- |
|
||||||
| https | **13011** | 13011 | 13011 | Harbor | Harbor | Harbor**管理界面**,admin:Bbit000000 |
|
| docker | / | / | 13011 | 13011 | Harbor | Harbor | Harbor**管理界面**,admin:Bbit000000 |
|
||||||
| | | | 8091 | ce_vue | Vue | Vue前端服务-AI实验室 |
|
| storeage | / | / | 9000 | 9000 | ce_minio | MinIO | MinIO数据访问 |
|
||||||
| | | 8089 | | | Ktor | 实验室业务后端,使用systemctl启动 |
|
| | | | 9001 | 9001 | ce_minio | MinIO | MinIO**管理界面**,minioadmin:minioadmin |
|
||||||
| | | | 13011 | ce_pybackend | FastAPI | 实验室AI后端 |
|
| remote | / | / | 8088 | | | ws-scrcpy | Android网页远程框架 |
|
||||||
| | | 5432 | 5432 | ce_postgres | PostgreSQL | PostgreSQL数据库,postgres:123456 |
|
| ai | / | / | 8091 | 8091 | ce_vue | Vue3 | Vue前端服务-AI实验室 |
|
||||||
| | | 6379 | 6379 | ce_redis | Redis | Radis数据库,无验证 |
|
| | /api | /api | 8089 | | | Ktor | 实验室业务后端 |
|
||||||
| | | | 2379 | ce_etcd | Etcd | Etcd,Key-Value 存储,给ce_milvus使用 |
|
| | /ai | / | 13011 | | ce_pybackend | FastAPI | 实验室AI后端 |
|
||||||
| https | **9000** | 9000 | 9000 | ce_minio | MinIO | MinIO数据访问 |
|
| | /iot | /iot | 13011 | | ce_pybackend | FastAPI | 实验室AI后端-IOT接口 |
|
||||||
| | | 9001 | 9001 | ce_minio | MinIO | MinIO**管理界面**,minioadmin:minioadmin |
|
| | /api/public | /api/public | 13011 | | ce_pybackend | FastAPI | 实验室AI后端-公开接口 |
|
||||||
| | | 19530 | 19530 | ce_milvus | Milvus | Minvus数据访问 |
|
| invoice | / | / | 8070 | | | | 农产品发票管理平台 |
|
||||||
| | | 9091 | 9091 | ce_milvus | Milvus | Minvus**管理界面**,需要加/webui,无需登录 |
|
| github | / | / | 3000 | 3000 | ce_gitea | Gitea | Git托管仓库 |
|
||||||
| | | 3000 | 3000 | ce_attu | Attu | Minvus Attu**管理界面**,无需密码 |
|
| chat | / | / | 8095 | 80 | | Dify | Dify前端 |
|
||||||
| https | **8090** | 8090 | 8090 | ce_kong | Kong | Kong网关 |
|
| mqtt | tls | tcp | 8883 | 8883 | ce_emqx | EMQX | MQTT TCP TLS 端口 |
|
||||||
| | | 8001 | 8001 | ce_kong | Kong | Kong Admin API |
|
| | | | 8083 | 8083 | ce_emqx | EMQX | MQTT WS 端口 |
|
||||||
| | | 8002 | 8002 | ce_kong | Kong | Kong**管理界面**,无需登录 |
|
| | | | 8084 | 8084 | ce_emqx | EMQX | MQTT WS TLS 端口 |
|
||||||
| | | 8444 | 8444 | ce_kong | Kong | Kong Admin API 的 HTTPS 端口 |
|
| | | | 18083 | 18083 | ce_emqx | EMQX | EMQX**管理界面**,admin:Bbit000000 |
|
||||||
| | | 8088 | | | ws-scrcpy | Android远程框架 |
|
| | | | 1883 | 1883 | ce_emqx | EMQX | MQTT TCP 端口 |
|
||||||
| http | **5672** | 5672 | 5672 | ce_rabbitmq | RabbitMQ | RabbitMQ 客户端连接端口 |
|
| | | | 5672 | 5672 | ce_rabbitmq | RabbitMQ | RabbitMQ 客户端连接端口 |
|
||||||
| | | 15672 | 15672 | ce_rabbitmq | RabbitMQ | RabbitMQ**管理界面**,admin:123456 |
|
| | | | 15672 | 15672 | ce_rabbitmq | RabbitMQ | RabbitMQ**管理界面**,admin:123456 |
|
||||||
| | | 9323 | 9323 | | Docker | Docker debug端口 |
|
| | | | 5432 | 5432 | ce_postgres | PostgreSQL | PostgreSQL数据库,postgres:123456 |
|
||||||
| | | 3001 | 3001 | ce_grafana | Grafana | Grafana**管理界面**,admin:123456 |
|
| | | | 6379 | 6379 | ce_redis | Redis | Radis数据库,无验证 |
|
||||||
| | | 9090 | 9090 | ce_prometheus | Prometheus | Prometheus监控/**管理界面**,无需登录 |
|
| | | | | 2379 | ce_etcd | Etcd | Etcd,Key-Value 存储,供ce_milvus |
|
||||||
| | | | 9121 | ce_redis_exporter | Prometheus | Prometheus监控Radis的工具 |
|
| | | | 19530 | 19530 | ce_milvus | Milvus | Minvus数据访问 |
|
||||||
| | | | 9187 | ce_postgres_exporter | Prometheus | Prometheus监控PostgreSQL的工具 |
|
| | | /webui | 9091 | 9091 | ce_milvus | Milvus | Minvus**管理界面**,无需登录 |
|
||||||
| | | 9100 | host | ce_node_exporter | Prometheus | Prometheus监控主机的工具 |
|
| | | | 3002 | 3000 | ce_attu | Attu | Minvus Attu**管理界面**,无需密码 |
|
||||||
| | | 8000 | 8000 | ce_bot_server | xiaozhi-esp32-server | 小智AI服务ws端口 |
|
|
||||||
| | | 8003 | 8003 | ce_bot_server | xiaozhi-esp32-server | 小智AI服务http端口 |
|
- 暂时未部署项目
|
||||||
| | | 8005 | 8002 | ce_bot_web | xiaozhi-esp32-server | 小智**管理界面**,admin:Bbit000000 |
|
- CVAT
|
||||||
| | | 8092 | 8092 | ce_bot_test | xiaozhi-esp32-server | 小智服务器测试页面 |
|
- Vben Admin Demo
|
||||||
| | | 8004 | 8004 | ce_bot_mcp | mcp-endpoint-server | 小智MCP接入点 |
|
- Prometheus
|
||||||
| https | **8094** | 8094 | 8080 | CVAT | CVAT | CVAT**管理界面**,bbit:bbit |
|
- Grafana
|
||||||
| | | 18083 | 18083 | ce_emqx | EMQX | EMQX**管理界面**,admin:Bbit000000 |
|
|
||||||
| | | 8093 | 1883 | ce_emqx | EMQX | MQTT TCP 端口 |
|
|
||||||
| https | **8093** | 8883 | 8883 | ce_emqx | EMQX | MQTT TCP TLS 端口 |
|
|
||||||
| | | 8083 | 8083 | ce_emqx | EMQX | MQTT WS 端口 |
|
|
||||||
| | | 8084 | 8084 | ce_emqx | EMQX | MQTT WS TLS 端口 |
|
|
||||||
| | | 3000 | | ce_gitea | Gitea | 管理页面:bbit:12345678 |
|
|
||||||
| | | | | | | |
|
|
||||||
| | | | | | | |
|
|
||||||
| | | | | | | |
|
|
||||||
| | | | | | | |
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## 三、新部署
|
|
||||||
|
|
||||||
### 3.1 ktor
|
|
||||||
|
|
||||||
1. 将Ktor程序运行installDist打包程序。
|
|
||||||
|
|
||||||
2. 将程序覆盖于服务器/opt/final/ktor文件夹
|
|
||||||
|
|
||||||
3. 重启服务
|
|
||||||
```
|
|
||||||
sudo systemctl restart ktor.service
|
|
||||||
|
|
||||||
sudo systemctl status ktor.service
|
|
||||||
```
|
|
||||||
|
|
||||||
### 3.2 FastAPI
|
|
||||||
|
|
||||||
1. 打包镜像:运行Dockerfile
|
|
||||||
```
|
|
||||||
docker build -t ce_pybackend .
|
|
||||||
```
|
|
||||||
|
|
||||||
2. 打标签
|
|
||||||
```
|
|
||||||
docker tag ce_pybackend:latest s1.ronsunny.cn:13011/bbit_ai/ce_pybackend:latest
|
|
||||||
docker tag ce_pybackend:latest s1.ronsunny.cn:13011/bbit_ai/ce_pybackend:1.5
|
|
||||||
```
|
|
||||||
|
|
||||||
3. 推送镜像
|
|
||||||
```
|
|
||||||
docker push s1.ronsunny.cn:13011/bbit_ai/ce_pybackend:1.5
|
|
||||||
docker push s1.ronsunny.cn:13011/bbit_ai/ce_pybackend:latest
|
|
||||||
```
|
|
||||||
|
|
||||||
4. (服务器)重启Compose
|
|
||||||
```
|
|
||||||
docker-compose pull backend
|
|
||||||
|
|
||||||
docker compose up -d
|
|
||||||
```
|
|
||||||
|
|
||||||
### 3.3 Vue
|
|
||||||
|
|
||||||
1. 打包项目
|
|
||||||
```
|
|
||||||
pnpm build:antd
|
|
||||||
```
|
|
||||||
|
|
||||||
2. 打包镜像:运行Dockerfile
|
|
||||||
|
|
||||||
```
|
|
||||||
docker build -t ce_vue .
|
|
||||||
```
|
|
||||||
|
|
||||||
3. 打标签
|
|
||||||
```
|
|
||||||
docker tag ce_vue:latest s1.ronsunny.cn:13011/bbit_ai/ce_vue:latest
|
|
||||||
docker tag ce_vue:latest s1.ronsunny.cn:13011/bbit_ai/ce_vue:1.1.0
|
|
||||||
```
|
|
||||||
|
|
||||||
4. 推送镜像
|
|
||||||
```
|
|
||||||
docker push s1.ronsunny.cn:13011/bbit_ai/ce_vue:1.1.0
|
|
||||||
docker push s1.ronsunny.cn:13011/bbit_ai/ce_vue:latest
|
|
||||||
```
|
|
||||||
|
|
||||||
5. (服务器)重启Compose
|
|
||||||
```
|
|
||||||
docker-compose pull vue
|
|
||||||
docker compose up -d
|
|
||||||
```
|
|
||||||
|
|
||||||
### 3.4 更新并重启Compose
|
|
||||||
|
|
||||||
```
|
|
||||||
docker compose down
|
|
||||||
docker compose pull vue backend
|
|
||||||
docker compose up -d
|
|
||||||
|
|
||||||
docker image prune -f
|
|
||||||
```
|
|
||||||
|
|
||||||
## 四、配置
|
|
||||||
|
|
||||||
- 安装顺序
|
|
||||||
|
|
||||||
1. 安装docker
|
|
||||||
2. 运行基本环境infra-compose.yaml
|
|
||||||
3. 安装Harbor
|
|
||||||
4. 推送镜像
|
|
||||||
5. 运行前后端程序docker-compose.yaml
|
|
||||||
|
|
||||||
- Harbor
|
|
||||||
|
|
||||||
1. 添加用户
|
|
||||||
|
|
||||||
2. 添加仓库
|
|
||||||
|
|
||||||
3. 添加仓库用户使用权限
|
|
||||||
|
|
||||||
4. (2x客户端)登录
|
|
||||||
```
|
|
||||||
docker login ai.ronsunny.cn:13011
|
|
||||||
```
|
|
||||||
|
|
||||||
- Prometheus
|
|
||||||
|
|
||||||
1. 设置docker metrics配置文件
|
|
||||||
```
|
|
||||||
{
|
|
||||||
"registry-mirrors": [
|
|
||||||
"https://docker.m.daocloud.io",
|
|
||||||
"https://mirror.baidubce.com",
|
|
||||||
"https://docker.nju.edu.cn"
|
|
||||||
],
|
|
||||||
"metrics-addr": "10.10.10.9:9323",
|
|
||||||
"experimental": true,
|
|
||||||
"insecure-registries": ["s1.ronsunny.cn:13011"]
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
2. 重启docker
|
|
||||||
```
|
|
||||||
sudo systemctl restart docker
|
|
||||||
```
|
|
||||||
|
|
||||||
- RabbitMQ
|
|
||||||
|
|
||||||
1. 添加用户
|
|
||||||
2. 添加Vhost
|
|
||||||
|
|
||||||
- [Grafana][https://grafana.com/grafana/dashboards/]
|
|
||||||
|
|
||||||
1. 创建Prometheus数据源
|
|
||||||
|
|
||||||
2. 增加配置
|
|
||||||
|
|
||||||
| 项目 | 代码 | 描述 |
|
|
||||||
| ----------- | ----- | ---- |
|
|
||||||
| MinIO | 13502 | |
|
|
||||||
| Docker | 9621 | |
|
|
||||||
| PostgreSQL | 9628 | |
|
|
||||||
| 主机 | 1860 | |
|
|
||||||
| RabbitMQ | 10991 | |
|
|
||||||
| Redis | 11835 | |
|
|
||||||
| Prometheus | 19268 | |
|
|
||||||
| 主机 中文版 | 8919 | |
|
|
||||||
| Kong | 7424 | |
|
|
||||||
|
|
||||||
- MinIO
|
|
||||||
|
|
||||||
```
|
|
||||||
Minio 交换机路由配置
|
|
||||||
交换机video_exchange
|
|
||||||
路由/sca
|
|
||||||
队列/sca_queue
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## 五、其他
|
|
||||||
|
|
||||||
docker 权限
|
|
||||||
|
|
||||||
sudo groupadd docker
|
|
||||||
|
|
||||||
sudo usermod -aG docker kaijihar
|
|
||||||
|
|
||||||
newgrp docker
|
|
||||||
|
|
||||||
### 旧部署
|
|
||||||
|
|
||||||
后端
|
|
||||||
|
|
||||||
ktor
|
|
||||||
|
|
||||||
1. 将Ktor程序运行installDist打包程序。
|
|
||||||
|
|
||||||
2. 将程序覆盖于服务器/opt/final/ktor文件夹
|
|
||||||
|
|
||||||
3. 将项目目录server/service的ktor.service文件置于服务器/etc/systemd/system/目录
|
|
||||||
|
|
||||||
4. 输入命令使服务开机自启
|
|
||||||
```shell
|
|
||||||
sudo systemctl enable ktor.service
|
|
||||||
sudo systemctl status ktor.service
|
|
||||||
|
|
||||||
|
|
||||||
sudo systemctl restart ktor.service
|
|
||||||
```
|
|
||||||
|
|
||||||
python
|
|
||||||
|
|
||||||
1. 打包Docker
|
|
||||||
```
|
|
||||||
docker build -t ce_pybackend .
|
|
||||||
```
|
|
||||||
|
|
||||||
2. 保存Image为文件
|
|
||||||
```
|
|
||||||
docker save -o ce-pybackend.tar ce_pybackend
|
|
||||||
```
|
|
||||||
|
|
||||||
3. 将保存好的Image`ce-pybackend.tar`上传到服务器
|
|
||||||
|
|
||||||
4. 删除服务器的旧版镜像
|
|
||||||
```
|
|
||||||
docker rmi ce_pybackend:latest
|
|
||||||
```
|
|
||||||
|
|
||||||
5. **读取上传的新镜像**
|
|
||||||
|
|
||||||
```
|
|
||||||
docker load -i ce_pybackend.tar
|
|
||||||
```
|
|
||||||
|
|
||||||
其他命令:
|
|
||||||
|
|
||||||
- 测试运行docker
|
|
||||||
```
|
|
||||||
docker run -d -p 13011:13011 ce_pybackend
|
|
||||||
```
|
|
||||||
|
|
||||||
- 调试运行项目
|
|
||||||
```
|
|
||||||
uvicorn app:app --reload --host 0.0.0.0 --port 13011
|
|
||||||
```
|
|
||||||
|
|
||||||
- docker日志查看
|
|
||||||
```
|
|
||||||
docker logs -f ce_pybackend
|
|
||||||
```
|
|
||||||
|
|
||||||
前端
|
|
||||||
|
|
||||||
直接在wsl中build,不要install
|
|
||||||
|
|
||||||
1. 在vue目录运行docker打包命令
|
|
||||||
```shell
|
|
||||||
pnpm build:docker
|
|
||||||
```
|
|
||||||
|
|
||||||
2. 将Image保存为文件
|
|
||||||
```shell
|
|
||||||
docker save -o vue.tar ce_vue
|
|
||||||
```
|
|
||||||
|
|
||||||
3. 将保存好的Image`vue.tar`上传到服务器
|
|
||||||
|
|
||||||
4. 停掉之前的docker compose
|
|
||||||
|
|
||||||
```
|
|
||||||
docker-compose down
|
|
||||||
```
|
|
||||||
|
|
||||||
5. 删除之前的Image
|
|
||||||
|
|
||||||
```shell
|
|
||||||
docker rmi ce_vue:latest
|
|
||||||
```
|
|
||||||
|
|
||||||
6. 在服务器读取Image
|
|
||||||
```shell
|
|
||||||
docker load -i vue.tar
|
|
||||||
```
|
|
||||||
|
|
||||||
7. 重新运行
|
|
||||||
|
|
||||||
```
|
|
||||||
docker compose up -d
|
|
||||||
```
|
|
||||||
|
|
||||||
### docker
|
|
||||||
|
|
||||||
#### 内网地址
|
|
||||||
|
|
||||||
windows:host.docker.internal
|
|
||||||
|
|
||||||
Linux:ip addr show docker0 查看
|
|
||||||
|
|
||||||
#### 相关命令
|
|
||||||
|
|
||||||
查看所有镜像
|
|
||||||
|
|
||||||
```
|
|
||||||
docker images
|
|
||||||
```
|
|
||||||
|
|
||||||
删除镜像
|
|
||||||
|
|
||||||
```
|
|
||||||
docker rm
|
|
||||||
```
|
|
||||||
|
|
||||||
删除容器
|
|
||||||
|
|
||||||
```
|
|
||||||
docker rmi 镜像名:Tag
|
|
||||||
```
|
|
||||||
|
|
||||||
删除无用镜像
|
|
||||||
|
|
||||||
```
|
|
||||||
docker image prune
|
|
||||||
```
|
|
||||||
|
|
||||||
### Vue项目使用
|
|
||||||
|
|
||||||
- 本地运行dist文件夹
|
|
||||||
|
|
||||||
```shell
|
|
||||||
npm install -g http-server
|
|
||||||
cd dist
|
|
||||||
http-server -p 8080
|
|
||||||
```
|
|
||||||
|
|
||||||
- VBen项目运行方法
|
|
||||||
|
|
||||||
1. 下载最新node
|
|
||||||
|
|
||||||
2. 开发
|
|
||||||
|
|
||||||
```shell
|
|
||||||
# 进入项目目录
|
|
||||||
cd vue-vben-admin
|
|
||||||
|
|
||||||
# 使用项目指定的pnpm版本进行依赖安装
|
|
||||||
npm i -g corepack
|
|
||||||
|
|
||||||
# 安装依赖
|
|
||||||
pnpm install
|
|
||||||
# 启动项目
|
|
||||||
pnpm dev
|
|
||||||
```
|
|
||||||
|
|
||||||
3. 本地部署
|
|
||||||
```shell
|
|
||||||
构建
|
|
||||||
pnpm build
|
|
||||||
|
|
||||||
预览
|
|
||||||
pnpm preview
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
[https://grafana.com/grafana/dashboards/]:
|
|
||||||
@@ -1,10 +1,8 @@
|
|||||||
VITE_BASE=/
|
VITE_BASE=/
|
||||||
|
|
||||||
# 接口地址
|
# 接口地址
|
||||||
#VITE_GLOB_API_URL=https://ai.ronsunny.cn:8090/api
|
VITE_GLOB_API_URL=https://ai.bbitcn.net/api
|
||||||
#VITE_GLOB_API_URL_PY=https://ai.ronsunny.cn:8090/ai
|
VITE_GLOB_API_URL_PY=https://ai.bbitcn.net/ai
|
||||||
VITE_GLOB_API_URL=https://171.212.101.200:8090/api
|
|
||||||
VITE_GLOB_API_URL_PY=https://171.212.101.200:8090/ai
|
|
||||||
|
|
||||||
# 是否开启压缩,可以设置为 none, brotli, gzip
|
# 是否开启压缩,可以设置为 none, brotli, gzip
|
||||||
VITE_COMPRESS=none
|
VITE_COMPRESS=none
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ type WsOptions = {
|
|||||||
path: (() => string) | string;
|
path: (() => string) | string;
|
||||||
reconnectInterval?: number;
|
reconnectInterval?: number;
|
||||||
};
|
};
|
||||||
const BASE_WS_URL = 'wss://ai.ronsunny.cn:8090/ai/';
|
const BASE_WS_URL = 'wss://ai.bbitcn.net/ai/';
|
||||||
// const BASE_WS_URL = 'ws://127.0.0.1:13011/';
|
// const BASE_WS_URL = 'ws://127.0.0.1:13011/';
|
||||||
export function createAutoReconnectWs(options: WsOptions) {
|
export function createAutoReconnectWs(options: WsOptions) {
|
||||||
let ws: null | WebSocket = null;
|
let ws: null | WebSocket = null;
|
||||||
|
|||||||
@@ -65,6 +65,6 @@ export const overridesPreferences = defineOverridesPreferences({
|
|||||||
},
|
},
|
||||||
logo: {
|
logo: {
|
||||||
enable: true,
|
enable: true,
|
||||||
source: 'https://ai.ronsunny.cn:9000/system/default/favicon.ico',
|
source: 'https://storage.bbitcn.net/system/default/favicon.ico',
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -127,7 +127,7 @@ const disconnectAll = async () => {
|
|||||||
<template #default>
|
<template #default>
|
||||||
<Card class="ml-2 h-full">
|
<Card class="ml-2 h-full">
|
||||||
<iframe
|
<iframe
|
||||||
src="https://ai.ronsunny.cn:8090/remote"
|
src="https://remote.bbitcn.net"
|
||||||
class="h-full w-full"
|
class="h-full w-full"
|
||||||
></iframe>
|
></iframe>
|
||||||
</Card>
|
</Card>
|
||||||
|
|||||||
@@ -9,6 +9,6 @@ COPY apps/web-antd/dist /usr/share/nginx/html
|
|||||||
# 拷贝 nginx 配置
|
# 拷贝 nginx 配置
|
||||||
COPY scripts/deploy/nginx.conf /etc/nginx/nginx.conf
|
COPY scripts/deploy/nginx.conf /etc/nginx/nginx.conf
|
||||||
|
|
||||||
#EXPOSE 8091 因为使用kong做网关 可以直接使用ce-vue:8091访问 所以这里可以不暴露给内网
|
EXPOSE 8091
|
||||||
|
|
||||||
CMD ["nginx", "-g", "daemon off;"]
|
CMD ["nginx", "-g", "daemon off;"]
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# push_docker.ps1
|
# push_docker.ps1
|
||||||
|
|
||||||
# Set version
|
# Set version
|
||||||
$env:VERSION = "1.5.5.1"
|
$env:VERSION = "1.5.6"
|
||||||
|
|
||||||
# Docker registry/repository
|
# Docker registry/repository
|
||||||
$registry = "ai.ronsunny.cn:13011/bbit_ai/ce_vue"
|
$registry = "docker.bbitcn.net/bbit_ai/ce_vue"
|
||||||
|
|
||||||
# Dockerfile path
|
# Dockerfile path
|
||||||
$dockerfilePath = ".\scripts\deploy\Dockerfile"
|
$dockerfilePath = ".\scripts\deploy\Dockerfile"
|
||||||
|
|||||||
Reference in New Issue
Block a user