-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathDockerfile.dev
26 lines (20 loc) · 877 Bytes
/
Dockerfile.dev
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# syntax=docker/dockerfile:1
FROM golang:1.23.5-bullseye as builder
RUN apt install ca-certificates gcc
WORKDIR /app
COPY . .
RUN cat /etc/ssl/certs/ca-certificates.crt /app/dev/pebble/certs/cert.pem > /app/ca-certificates.crt
RUN --mount=type=cache,target=/root/go/pkg/mod \
go mod download
ARG TARGETOS
ARG TARGETARCH
RUN --mount=type=cache,target=/root/.cache/go-build \
GOARM=7 GOAMD64=v3 \
go build -race -tags 'osusergo netgo urfave_cli_no_docs no_mocks' \
-ldflags "-s -w -extldflags -static -X 'go.miragespace.co/specter/cmd/client.devApexOverride=dev.con.nect.sh' -X go.miragespace.co/specter/acme.BuildTime=`date +%s`" \
-o bin/specter .
FROM --platform=$BUILDPLATFORM debian:bullseye-slim
WORKDIR /app
COPY --from=builder /app/ca-certificates.crt /etc/ssl/certs/
COPY --from=builder /app/bin/specter /app/specter
ENTRYPOINT ["/app/specter"]