# ICP(Intelligence Control Platform) ## 简介 主干AI实验室使用以下技术栈: Vue:实验室前端 Ktor:实验室后端 PostgreSQL:实验室业务数据库 MinIO:实验室对象存储服务器 Python FastAPI:实验室AI模块后端程序 Milvus:实验室AI模块向量数据库 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 build -t ce-pybackend . 2. 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 Compose 包含Vue、PostgreSQL、Radis、MinIO在内的Docker Compose服务 1. 将项目目录下的`server/docker-compose.yml`复制到服务器 2. 在`/opt/fianl/vue-image/文件夹下`运行Docker Compose ```shell docker compose up -d ``` ## 其他 ### Vue项目使用 1. 本地运行dist文件夹 ```shell npm install -g http-server cd dist http-server -p 8080 ``` 2. VBen项目运行方法 1. 下载最新node 2. 开发 ```shell # 进入项目目录 cd vue-vben-admin # 使用项目指定的pnpm版本进行依赖安装 npm i -g corepack # 安装依赖 pnpm install # 启动项目 pnpm dev ``` 3. 本地部署 ```shell 构建 pnpm build 预览 pnpm preview ```