# Kedge development environment — podman-compose / docker-compose # Usage: podman-compose up -d services: # Go build + dev container with hot reload support. dev: build: context: . dockerfile: Containerfile.dev volumes: - .:/src:z - go-mod-cache:/go/pkg/mod - go-build-cache:/root/.cache/go-build working_dir: /src command: sleep infinity network_mode: host privileged: true cap_add: - NET_ADMIN - SYS_ADMIN # YANG compiler dev container (Python). yang-compiler: image: docker.io/library/python:3.12-slim volumes: - ./yang:/src/yang:z working_dir: /src/yang command: > bash -c "pip install -r requirements.txt && sleep infinity" # Local Quartermaster mock for development. # Uses the real QM image if available, otherwise a gRPC echo server. quartermaster: image: docker.io/library/golang:1.23-bookworm command: > bash -c "echo 'Quartermaster mock — replace with real QM image when available' && sleep infinity" ports: - "50051:50051" volumes: go-mod-cache: go-build-cache: