diff --git a/SKILL.md b/SKILL.md new file mode 100644 index 0000000..e69de29 diff --git a/docker-compose-skill.yml b/docker-compose-skill.yml new file mode 100644 index 0000000..8af25e9 --- /dev/null +++ b/docker-compose-skill.yml @@ -0,0 +1,50 @@ +# docker-compose.yml +version: '3.4' +services: + mcp-skill: + restart: unless-stopped + build: + context: . + dockerfile: docker/Dockerfile-mcp-skill + target: production + environment: + PORT: 8090 + ports: + - "8090:8090" + volumes: + - bot-data:/app + + bot: + restart: unless-stopped + build: + context: . + dockerfile: docker/Dockerfile-bot + target: production + environment: + MCP_SERVERS: http://mcp-skill:8090/mcp + env_file: + - .env + ports: + - "8080:8080" + volumes: + - bot-data:/app + depends_on: + - mcp-skill + + client-telegram: + restart: unless-stopped + build: + context: . + dockerfile: docker/Dockerfile-client-telegram + target: production + environment: + AI_SERVICE: http://bot:8080 + env_file: + - .env + ports: + - "8085:8085" + depends_on: + - bot + +volumes: + bot-data: diff --git a/docker/Dockerfile-mcp-skill b/docker/Dockerfile-mcp-skill new file mode 100644 index 0000000..3dbcdb1 --- /dev/null +++ b/docker/Dockerfile-mcp-skill @@ -0,0 +1,14 @@ +FROM golang:1.25 AS build + +WORKDIR /go/src/app +COPY . . + +RUN go mod download +RUN CGO_ENABLED=0 go build -o /go/bin/mcp-skill -ldflags '-w -s' cmd/server-mcp-skill/main.go cmd/server-mcp-skill/tools.go + + +FROM gcr.io/distroless/static AS production +WORKDIR /app +COPY --from=build /go/bin/mcp-skill mcp-skill +COPY --from=build /go/src/app/SKILL.md SKILL.md +ENTRYPOINT ["./mcp-skill"]