FROM golang:alpine AS build-env # Install dependencies RUN apk add --update git build-base linux-headers # Set working directory for the build WORKDIR /go/src/git.vdb.to/cerc-io/laconicd # Cache Go modules COPY go.mod go.sum ./ RUN go mod download # Add source files COPY . . # Make the binary RUN make build # Final image FROM ubuntu:22.04 # Install ca-certificates, jq, curl, bash, and other necessary packages RUN apt-get update && apt-get install -y --no-install-recommends \ ca-certificates \ jq curl bash \ && rm -rf /var/lib/apt/lists/* # Copy over binaries from the build-env COPY --from=build-env /go/src/git.vdb.to/cerc-io/laconicd/build/laconicd /usr/bin/laconicd WORKDIR / # Run laconicd by default CMD ["laconicd"]