iop/apps/control-plane/Dockerfile
toki 6f36449daa feat(control-plane): edge connector implementation and control proto updates
- Add edge connector module (edge.go, edge_registry.go, edge_server.go)
- Add edge server tests (edge_server_test.go, edge_test.go)
- Update control.proto with edge-related messages and RPCs
- Generate proto files for Go, Dart
- Update control-plane Dockerfile and configuration
- Add client-side proto bindings
- Update roadmap and milestones for control-plane-edge-wire-baseline
- Add agent-task documentation for edge connector and local smoke tests
- Update docker-compose.yml for edge support
2026-05-30 20:00:37 +09:00

29 lines
840 B
Docker

# syntax=docker/dockerfile:1
FROM golang:1.24-alpine AS builder
WORKDIR /workspace/iop
RUN apk add --no-cache git
# docker-compose builds this Dockerfile with /config/workspace as context so
# the local ../proto-socket/go replace in go.mod is available.
COPY iop/go.mod iop/go.sum ./
COPY proto-socket/go /workspace/proto-socket/go
RUN go mod download
COPY iop/ ./
RUN CGO_ENABLED=0 GOFLAGS=-trimpath go build -o /out/control-plane ./apps/control-plane/cmd/control-plane
FROM alpine:3.22
RUN addgroup -S iop && adduser -S iop -G iop
WORKDIR /app
COPY --from=builder /out/control-plane /usr/local/bin/control-plane
COPY --from=builder /workspace/iop/configs/control-plane.yaml /app/configs/control-plane.yaml
EXPOSE 9080 19080 19081
USER iop
ENTRYPOINT ["control-plane"]
CMD ["serve", "--config", "/app/configs/control-plane.yaml"]