Foundation for the persistent, inspectable cognitive runtime: README, implementation plan with phases and risk register, architecture, security model, threat model, contributing guide, eight ADRs covering the global workspace, event immutability, memory representation, LLM abstraction, capability system, authentication, frontend and storage. Includes Makefile, env example, compose stack (pgvector) and Dockerfile skeleton, plus a record of the development environment assumptions.
19 lines
703 B
Docker
19 lines
703 B
Docker
# syntax=docker/dockerfile:1
|
|
FROM golang:1.26-alpine AS build
|
|
WORKDIR /src
|
|
RUN apk add --no-cache git
|
|
COPY go.mod go.sum* ./
|
|
RUN --mount=type=cache,target=/go/pkg/mod go mod download
|
|
COPY . .
|
|
ARG VERSION=dev
|
|
RUN --mount=type=cache,target=/go/pkg/mod --mount=type=cache,target=/root/.cache/go-build \
|
|
CGO_ENABLED=0 go build -trimpath -ldflags "-s -w -X github.com/andydixon/noema/internal/version.Version=${VERSION}" -o /out/ ./cmd/...
|
|
|
|
FROM alpine:3.20
|
|
RUN apk add --no-cache ca-certificates git tzdata && adduser -D -u 10001 noema
|
|
COPY --from=build /out/noemad /out/noemactl /usr/local/bin/
|
|
USER noema
|
|
ENV NOEMA_HTTP_ADDR=0.0.0.0:8080 NOEMA_RESEARCH_DIR=/research
|
|
EXPOSE 8080
|
|
ENTRYPOINT ["noemad"]
|