repos / pico

pico services mono repo
git clone https://github.com/picosh/pico.git

commit
f6881c4
parent
47c751f
author
Eric Bower
date
2025-06-14 09:07:05 -0400 EDT
dockerfile work
2 files changed,  +43, -1
A Dockerfile.lite
+38, -0
 1@@ -0,0 +1,38 @@
 2+FROM --platform=$BUILDPLATFORM golang:1.24 AS builder-deps
 3+LABEL maintainer="Pico Maintainers <hello@pico.sh>"
 4+
 5+WORKDIR /app
 6+
 7+RUN apt-get update
 8+RUN apt-get install -y git ca-certificates
 9+
10+COPY go.* ./
11+
12+RUN --mount=type=cache,target=/go/pkg/,rw \
13+  --mount=type=cache,target=/root/.cache/,rw \
14+  go mod download
15+
16+FROM builder-deps AS builder-web
17+
18+COPY . .
19+
20+ARG TARGETOS
21+ARG TARGETARCH
22+
23+ENV CGO_ENABLED=0
24+ENV LDFLAGS="-s -w"
25+
26+ENV GOOS=${TARGETOS} GOARCH=${TARGETARCH}
27+
28+RUN --mount=type=cache,target=/go/pkg/,rw \
29+  --mount=type=cache,target=/root/.cache/,rw \
30+  go build -ldflags "$LDFLAGS" -o /go/bin/pgs-web-lite ./cmd/pgs/lite
31+
32+FROM scratch AS release-web
33+
34+WORKDIR /app
35+
36+COPY --from=builder-web /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/
37+COPY --from=builder-web /go/bin/pgs-web-lite ./web
38+
39+ENTRYPOINT ["/app/web"]
M Makefile
+5, -1
 1@@ -45,6 +45,10 @@ bp-auth: bp-setup
 2 	$(DOCKER_BUILDX_BUILD) -t ghcr.io/picosh/pico/auth-web:$(DOCKER_TAG) --build-arg APP=auth --target release-web .
 3 .PHONY: bp-auth
 4 
 5+bp-pgs-lite: bp-setup
 6+	$(DOCKER_BUILDX_BUILD) -t ghcr.io/picosh/pico/pgs-web-lite:$(DOCKER_TAG) --target release-web -f Dockerfile.lite .
 7+.PHONY: bp-pgs-lite
 8+
 9 bp-pico: bp-setup
10 	$(DOCKER_BUILDX_BUILD) -t ghcr.io/picosh/pico/pico-ssh:$(DOCKER_TAG) --build-arg APP=pico --target release-ssh .
11 .PHONY: bp-auth
12@@ -62,7 +66,7 @@ bp-%: bp-setup
13 	$(DOCKER_BUILDX_BUILD) --build-arg "APP=$*" -t "ghcr.io/picosh/pico/$*-web:$(DOCKER_TAG)" --target release-web .
14 .PHONY: bp-%
15 
16-bp-all: bp-prose bp-pastes bp-feeds bp-pgs bp-auth bp-bouncer bp-pipe
17+bp-all: bp-prose bp-pastes bp-feeds bp-pgs bp-auth bp-bouncer bp-pipe bp-pgs-lite
18 .PHONY: bp-all
19 
20 build-auth: