From fbcb65606142f43b002a7b272d79a6c711599810 Mon Sep 17 00:00:00 2001 From: desAweis Date: Fri, 10 Oct 2025 17:38:45 +0800 Subject: [PATCH] [app-builder] optimize quick start dev --- README.md | 16 +++++++++++++--- docker/.env.example | 5 ++++- docker/dev-app-builder.sh | 12 ++++++------ docker/docker-compose.dev.yml | 12 ++++++------ docker/docker-compose.yml | 12 ++++++------ 5 files changed, 35 insertions(+), 22 deletions(-) diff --git a/README.md b/README.md index 04159ef522..5edefb87c4 100644 --- a/README.md +++ b/README.md @@ -36,7 +36,7 @@ | 内存 | 4+ GB | | 软件 | 安装 Docker & Docker Compose | -### 2. Docker Compose 启动 +### 2. Docker Compose 启动(拉取镜像以及启动服务时间大约 3 minutes) 克隆项目并进入项目根目录,执行以下命令:/ Clone the repository and enter the project root directory, then run the following commands: ```shell # 用户按需配置环境变量,例如模型名称、基础 URL 和 APIKEY等 / Configure environment variables as needed, including model name, base URL and APIKEY @@ -47,17 +47,24 @@ bash docker/deploy.sh > 如需修改数据库密码,二次启动前需要删除`docker/app-platform-tmp`目录 -## 本地快速开发测试 +## 后端快速开发测试 本章节给出快速启动之后,本地快速开发测试的方法。 ### 1. 编译代码 +1.1. 全量编译(2 minutes 30 seconds) 编写代码,在项目根目录下,执行以下命令编译: ```shell mvn clean install ``` +1.2. 增量编译(10 seconds) +编写代码,在修改的插件目录下,执行以下命令编译: +```shell +mvn clean install +``` + ### 2. 一键部署修改 -在项目根目录下,执行以下命令快速部署: +在项目根目录下,执行以下命令快速部署(3 minutes 30 seconds): ```shell bash docker/dev-app-builder.sh ``` @@ -65,6 +72,9 @@ bash docker/dev-app-builder.sh ### 3. 测试 浏览器打开 http://localhost:8001 测试 +## 前端快速开发测试 +TODO + ## 源码编译启动 ### 安装数据库 diff --git a/docker/.env.example b/docker/.env.example index fa04596eb6..7dc700daf3 100644 --- a/docker/.env.example +++ b/docker/.env.example @@ -10,7 +10,7 @@ APIKEY=${APIKEY} # 部署配置 / Deployment configuration # ModelEngine 开源版本号 / ModelEngine opensource version -VERSION=opensource-1.3.0 +VERSION=opensource-1.2.4 # 用户自定义数据库密码 / User-configured database password DB_PASSWORD=ModelEngine@123 @@ -23,3 +23,6 @@ WEB_PORT=8001 # 是否升级模式 / Upgrade or not IS_UPGRADE=false + +# 阿里云镜像仓 / Aliyun Cloud Image Repo +REPO="crpi-62znuv6vkgxcv731.cn-hangzhou.personal.cr.aliyuncs.com/modelengine-hub" diff --git a/docker/dev-app-builder.sh b/docker/dev-app-builder.sh index a44d6ae6f4..c6adc3c5e1 100644 --- a/docker/dev-app-builder.sh +++ b/docker/dev-app-builder.sh @@ -35,7 +35,7 @@ docker-compose stop app-builder echo "=== Creating development version image ===" # Use stable version as base -docker run -d --name app-builder-tmp --entrypoint sleep modelengine/app-builder:${BASE_VERSION} infinity +docker run -d --name app-builder-tmp --entrypoint sleep ${REPO}/app-builder:${BASE_VERSION} infinity # Copy files echo "Copying plugins..." @@ -46,10 +46,10 @@ docker cp "$SHARED_DIR"/. app-builder-tmp:/opt/fit-framework/shared/ # Commit as development version echo "Committing development version image: ${DEV_VERSION}" -docker commit --change='ENTRYPOINT ["/opt/fit-framework/bin/start.sh"]' app-builder-tmp modelengine/app-builder:${DEV_VERSION} +docker commit --change='ENTRYPOINT ["/opt/fit-framework/bin/start.sh"]' app-builder-tmp ${REPO}/app-builder:${DEV_VERSION} # Create development tag (for docker-compose convenience) -docker tag modelengine/app-builder:${DEV_VERSION} modelengine/app-builder:dev-latest +docker tag ${REPO}/app-builder:${DEV_VERSION} ${REPO}/app-builder:dev-latest echo "=== Cleaning up temporary container ===" docker stop app-builder-tmp @@ -59,10 +59,10 @@ echo "=== Updating docker-compose configuration ===" # Create docker-compose configuration for development cp docker-compose.yml docker-compose.dev.yml if [[ "$(uname -s)" == "Darwin" ]]; then - sed -i '.bak' "s/modelengine\/app-builder:\${VERSION}/modelengine\/app-builder:dev-latest/g" docker-compose.dev.yml + sed -i '.bak' "s/app-builder:\${VERSION}/app-builder:dev-latest/g" docker-compose.dev.yml rm -f docker-compose.dev.yml.bak else - sed -i "s/modelengine\/app-builder:\${VERSION}/modelengine\/app-builder:dev-latest/g" docker-compose.dev.yml + sed -i "s/app-builder:\${VERSION}/app-builder:dev-latest/g" docker-compose.dev.yml fi echo "=== Restarting services ===" @@ -93,4 +93,4 @@ echo "Current tag in use: dev-latest" echo "Service URL: http://localhost:8001" echo "" echo "=== Version Management Commands ===" -echo "View all versions: docker images modelengine/app-builder" +echo "View all versions: docker images ${REPO}/app-builder" diff --git a/docker/docker-compose.dev.yml b/docker/docker-compose.dev.yml index e528bc47ab..10ba58145b 100644 --- a/docker/docker-compose.dev.yml +++ b/docker/docker-compose.dev.yml @@ -2,7 +2,7 @@ services: jade-db: container_name: jade-db hostname: jade-db - image: modelengine/postgres:15.2-${VERSION} + image: ${REPO}/postgres:15.2-${VERSION} healthcheck: test: [ "CMD-SHELL", "pg_isready -U postgres" ] interval: 10s @@ -27,7 +27,7 @@ services: db-initializer: container_name: db-initializer hostname: db-initializer - image: modelengine/postgres:15.2-${VERSION} + image: ${REPO}/postgres:15.2-${VERSION} networks: my-net: ipv4_address: 172.0.0.99 @@ -52,7 +52,7 @@ services: app-builder: container_name: app-builder hostname: app-builder - image: modelengine/app-builder:dev-latest + image: ${REPO}/app-builder:dev-latest depends_on: jade-db: condition: service_healthy @@ -94,7 +94,7 @@ services: fit-runtime-java: container_name: fit-runtime-java hostname: fit-runtime-java - image: modelengine/fit-runtime-java:${VERSION} + image: ${REPO}/fit-runtime-java:${VERSION} depends_on: app-builder: condition: service_healthy @@ -120,7 +120,7 @@ services: fit-runtime-python: container_name: fit-runtime-python hostname: fit-runtime-python - image: modelengine/fit-runtime-python:${VERSION} + image: ${REPO}/fit-runtime-python:${VERSION} depends_on: app-builder: condition: service_healthy @@ -146,7 +146,7 @@ services: web: container_name: web hostname: web - image: modelengine/jade-web:${VERSION} + image: ${REPO}/jade-web:${VERSION} depends_on: app-builder: condition: service_healthy diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml index 9a8f717636..5e82fd16fb 100644 --- a/docker/docker-compose.yml +++ b/docker/docker-compose.yml @@ -2,7 +2,7 @@ services: jade-db: container_name: jade-db hostname: jade-db - image: modelengine/postgres:15.2-${VERSION} + image: ${REPO}/postgres:15.2-${VERSION} healthcheck: test: [ "CMD-SHELL", "pg_isready -U postgres" ] interval: 10s @@ -27,7 +27,7 @@ services: db-initializer: container_name: db-initializer hostname: db-initializer - image: modelengine/postgres:15.2-${VERSION} + image: ${REPO}/postgres:15.2-${VERSION} networks: my-net: ipv4_address: 172.0.0.99 @@ -52,7 +52,7 @@ services: app-builder: container_name: app-builder hostname: app-builder - image: modelengine/app-builder:${VERSION} + image: ${REPO}/app-builder:${VERSION} depends_on: jade-db: condition: service_healthy @@ -94,7 +94,7 @@ services: fit-runtime-java: container_name: fit-runtime-java hostname: fit-runtime-java - image: modelengine/fit-runtime-java:${VERSION} + image: ${REPO}/fit-runtime-java:${VERSION} depends_on: app-builder: condition: service_healthy @@ -120,7 +120,7 @@ services: fit-runtime-python: container_name: fit-runtime-python hostname: fit-runtime-python - image: modelengine/fit-runtime-python:${VERSION} + image: ${REPO}/fit-runtime-python:${VERSION} depends_on: app-builder: condition: service_healthy @@ -146,7 +146,7 @@ services: web: container_name: web hostname: web - image: modelengine/jade-web:${VERSION} + image: ${REPO}/jade-web:${VERSION} depends_on: app-builder: condition: service_healthy