Skip to content

Feature: add Docker support - #116

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

Feature: add Docker support#116
FjHe wants to merge 2 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

感谢贡献,稍后我们看下

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