Skip to content

Feature: add Docker support - #116

Open
FjHe wants to merge 4 commits into
MaloneTalk:mainfrom
FjHe:docker_support
Open

Feature: add Docker support#116
FjHe wants to merge 4 commits into
MaloneTalk:mainfrom
FjHe:docker_support

Conversation

@FjHe

@FjHe FjHe commented Aug 13, 2026

Copy link
Copy Markdown
Contributor

#63

  1. Docker 配置文件(docker/ 目录)
  • docker-compose.yml - 定义了三个服务的编排配置:
    • MySQL 数据库服务(包含健康检查、字符集配置)
    • 后端服务(Spring Boot 应用)
    • 前端服务(Vue + Nginx)
  1. 文档里添加了docker启动说明
    docs/getting-started.md

已测试过:

docker-compose down -v
[+] Running 5/5
 ✔ Container data-agent-frontend  Removed                                                                                                                                                                                      0.0s 
 ✔ Container data-agent-backend   Removed                                                                                                                                                                                      0.6s 
 ✔ Container data-agent-mysql     Removed                                                                                                                                                                                      1.5s 
 ✔ Volume data-agent-mysql        Removed                                                                                                                                                                                      0.0s 
 ✔ Network data-agent-network     Removed                                                                                                                                                                                      0.3s 
(base) PS D:\HKYProject\DataAgent-MaloneTalk\docker> docker-compose up -d --build
[+] Building 1.7s (35/35) FINISHED
 => [internal] load local bake definitions                                                                                                                                                                                     0.0s 
 => => reading from stdin 1.01kB                                                                                                                                                                                               0.0s
 => [backend internal] load build definition from Dockerfile                                                                                                                                                                   0.0s
 => => transferring dockerfile: 975B                                                                                                                                                                                           0.0s 
 => [frontend internal] load build definition from Dockerfile                                                                                                                                                                  0.0s 
 => => transferring dockerfile: 803B                                                                                                                                                                                           0.0s 
 => [frontend internal] load metadata for docker.io/library/node:20-alpine                                                                                                                                                     0.2s 
 => [frontend internal] load metadata for docker.io/library/nginx:alpine                                                                                                                                                       0.2s 
 => [backend internal] load metadata for docker.io/library/eclipse-temurin:17-jre-alpine                                                                                                                                       0.2s 
 => [backend internal] load metadata for docker.io/library/maven:3.9-eclipse-temurin-17                                                                                                                                        0.2s 
 => [backend internal] load .dockerignore                                                                                                                                                                                      0.0s
 => => transferring context: 709B                                                                                                                                                                                              0.0s 
 => [backend internal] load build context                                                                                                                                                                                      0.0s 
 => => transferring context: 27.19kB                                                                                                                                                                                           0.0s 
 => [backend builder 1/6] FROM docker.io/library/maven:3.9-eclipse-temurin-17@sha256:4015718012bbf1113ec6cfae2b950be328d90265ceb60f92b26c3ea7c4d14ee8                                                                          0.0s 
 => => resolve docker.io/library/maven:3.9-eclipse-temurin-17@sha256:4015718012bbf1113ec6cfae2b950be328d90265ceb60f92b26c3ea7c4d14ee8                                                                                          0.0s 
 => [backend stage-1 1/6] FROM docker.io/library/eclipse-temurin:17-jre-alpine@sha256:02320dd4ce20e243dfb915c686089cf9315c763084fafbb12d5c9993aee18b57                                                                         0.0s 
 => => resolve docker.io/library/eclipse-temurin:17-jre-alpine@sha256:02320dd4ce20e243dfb915c686089cf9315c763084fafbb12d5c9993aee18b57                                                                                         0.0s 
 => [frontend builder 1/6] FROM docker.io/library/node:20-alpine@sha256:fb4cd12c85ee03686f6af5362a0b0d56d50c58a04632e6c0fb8363f609372293                                                                                       0.0s 
 => => resolve docker.io/library/node:20-alpine@sha256:fb4cd12c85ee03686f6af5362a0b0d56d50c58a04632e6c0fb8363f609372293                                                                                                        0.0s 
 => [frontend stage-1 1/3] FROM docker.io/library/nginx:alpine@sha256:4a73073bd557c65b759505da037898b61f1be6cbcc3c2c3aeac22d2a470c1752                                                                                         0.0s 
 => => resolve docker.io/library/nginx:alpine@sha256:4a73073bd557c65b759505da037898b61f1be6cbcc3c2c3aeac22d2a470c1752                                                                                                          0.0s
 => [frontend internal] load build context                                                                                                                                                                                     0.9s 
 => => transferring context: 1.81MB                                                                                                                                                                                            0.8s 
 => CACHED [backend stage-1 2/6] WORKDIR /app                                                                                                                                                                                  0.0s 
 => CACHED [backend stage-1 3/6] RUN mkdir -p /app/skills                                                                                                                                                                      0.0s 
 => CACHED [backend stage-1 4/6] RUN addgroup -g 1001 appgroup &&     adduser -u 1001 -G appgroup -D appuser                                                                                                                   0.0s 
 => CACHED [backend builder 2/6] WORKDIR /app                                                                                                                                                                                  0.0s 
 => CACHED [backend builder 3/6] COPY data-agent-backend/pom.xml .                                                                                                                                                             0.0s 
 => CACHED [backend builder 4/6] RUN mvn dependency:go-offline -B                                                                                                                                                              0.0s 
 => CACHED [backend builder 5/6] COPY data-agent-backend/src ./src                                                                                                                                                             0.0s 
 => CACHED [backend builder 6/6] RUN mvn clean package -DskipTests -B                                                                                                                                                          0.0s 
 => CACHED [backend stage-1 5/6] COPY --from=builder /app/target/*.jar app.jar                                                                                                                                                 0.0s 
 => CACHED [backend stage-1 6/6] RUN mkdir -p /app/logs && chown -R appuser:appgroup /app                                                                                                                                      0.0s 
 => [backend] exporting to image                                                                                                                                                                                               0.2s 
 => => exporting layers                                                                                                                                                                                                        0.0s 
 => => exporting manifest sha256:33053230d8a68830c6ce862dfa476699d0cbd9aeacf8cf86454b542e344a5fac                                                                                                                              0.0s 
 => => exporting config sha256:2d481a7b0924872f9055dde07cff6b189fbeefe53cf557a3312db7fbaf96a038                                                                                                                                0.0s 
 => => exporting attestation manifest sha256:17092eacda3fc54f83628967584bd9f1a8e82363a56426eeda0a9edf6f784dfa                                                                                                                  0.0s 
 => => exporting manifest list sha256:6fe1f2d865a8623199f490068cae569dc56af606b6ce1864e92da20f93ae9ff3                                                                                                                         0.0s 
 => => naming to docker.io/library/docker-backend:latest                                                                                                                                                                       0.0s 
 => => unpacking to docker.io/library/docker-backend:latest                                                                                                                                                                    0.0s 
 => [backend] resolving provenance for metadata file                                                                                                                                                                           0.0s 
 => CACHED [frontend stage-1 2/3] COPY docker/frontend/nginx.conf /etc/nginx/nginx.conf                                                                                                                                        0.0s 
 => CACHED [frontend builder 2/6] WORKDIR /app                                                                                                                                                                                 0.0s 
 => CACHED [frontend builder 4/6] COPY data-agent-frontend/ .                                                                                                                                                                  0.0s 
 => CACHED [frontend builder 5/6] RUN pnpm install --frozen-lockfile                                                                                                                                                           0.0s 
 => CACHED [frontend builder 6/6] RUN pnpm vite build                                                                                                                                                                          0.0s 
 => CACHED [frontend stage-1 3/3] COPY --from=builder /app/dist /usr/share/nginx/html                                                                                                                                          0.0s 
 => [frontend] exporting to image                                                                                                                                                                                              0.1s 
 => => exporting attestation manifest sha256:7e9d1593131321ecfbc2856c4688ca53160c328688e380db7ab00c44b798c504                                                                                                                  0.0s 
 => => exporting manifest list sha256:c7a83c5d9ac6c9e3706361261834bacc94ac4593b508a64edfc211c54de1cabd                                                                                                                         0.0s 
 => => naming to docker.io/library/docker-frontend:latest                                                                                                                                                                      0.0s 
 => => unpacking to docker.io/library/docker-frontend:latest                                                                                                                                                                   0.0s 
 => [frontend] resolving provenance for metadata file                                                                                                                                                                          0.0s 
[+] Running 7/7
 ✔ docker-frontend                Built                                                                                                                                                                                        0.0s 
 ✔ docker-backend                 Built                                                                                                                                                                                        0.0s 
 ✔ Network data-agent-network     Created                                                                                                                                                                                      0.0s 
 ✔ Volume "data-agent-mysql"      Created                                                                                                                                                                                      0.0s 
 ✔ Container data-agent-mysql     Healthy                                                                                                                                                                                     11.0s 
 ✔ Container data-agent-backend   Healthy                                                                                                                                                                                     41.5s 
 ✔ Container data-agent-frontend  Started  

@github-actions

Copy link
Copy Markdown

Thank you for your contribution! We will review your request as soon as possible. Please review the code yourself using ponytail https://github.com/DietrichGebert/ponytail.

@lzq986

lzq986 commented Aug 17, 2026

Copy link
Copy Markdown
Contributor

感谢贡献,稍后我们看下

Comment thread docker/backend/Dockerfile
Comment thread docker/frontend/nginx.conf
@lzq986

lzq986 commented Aug 18, 2026

Copy link
Copy Markdown
Contributor

辛苦打包好镜像后继续测试下,直接访问容器的地址来测试功能是否正常

@FjHe

FjHe commented Aug 19, 2026

Copy link
Copy Markdown
Contributor Author

提交commit修复的内容如下:
1、health check 我还是引入了spring-boot-starter-actuator。
2、修改了流式输出情况下,nginx的几个配置
3、docker fatjar启动的情况下,agentscope-extensions-nacos-skill的依赖则必须引入了,会报缺失。
4、修改了一下描述。


之前验证了一下午感觉都好好的,这次测到这么多问题感觉自己失忆了。。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants