podman build fix.

This commit is contained in:
2026-09-15 15:06:26 +00:00
parent 406affbf58
commit d288523d4e
2 changed files with 23 additions and 3 deletions
+6 -1
View File
@@ -1,4 +1,9 @@
FROM node:lts-trixie-slim AS base # Pin the Node stages to the builder's own platform ($BUILDPLATFORM).
# The Angular build output is platform-independent static files, so there is
# no need to run yarn/ng build under qemu emulation for linux/arm64 - doing
# so is slow and memory hungry and can OOM the machine during multi-arch
# builds (podman builds all --platform targets concurrently).
FROM --platform=$BUILDPLATFORM node:lts-trixie-slim AS base
# Install dependencies only when needed # Install dependencies only when needed
FROM base AS deps FROM base AS deps
+17 -2
View File
@@ -1,21 +1,36 @@
.PHONY: build-production .PHONY: build-production
build-production: ## Build the production container image. build-production: ## Build the production container image.
@echo "Cloning repository..."
@rm -rf .tmp-brewman
@git clone --depth 1 $(if $(TAG),--branch v$(TAG)) git@git.tanshu.com:tanshu/brewman.git .tmp-brewman
@echo "Building image..."
@podman manifest rm registry.tanshu.com/brewman:latest 2>/dev/null || true @podman manifest rm registry.tanshu.com/brewman:latest 2>/dev/null || true
@podman build \ @podman build \
--platform linux/amd64,linux/arm64 \ --platform linux/amd64,linux/arm64 \
--manifest registry.tanshu.com/brewman:latest \ --manifest registry.tanshu.com/brewman:latest \
git@git.tanshu.com:tanshu/brewman.git$(if $(TAG),#v$(TAG)) --pull \
.tmp-brewman || (rm -rf .tmp-brewman && exit 1)
@rm -rf .tmp-brewman
@echo "Pushing manifests..."
@podman manifest push --all registry.tanshu.com/brewman:latest docker://registry.tanshu.com/brewman:latest @podman manifest push --all registry.tanshu.com/brewman:latest docker://registry.tanshu.com/brewman:latest
$(if $(TAG),@podman manifest push --all registry.tanshu.com/brewman:latest docker://registry.tanshu.com/brewman:$(TAG)) $(if $(TAG),@podman manifest push --all registry.tanshu.com/brewman:latest docker://registry.tanshu.com/brewman:$(TAG))
.PHONY: build-check .PHONY: build-check
build-check: ## Multi-arch build without push (compile check) build-check: ## Multi-arch build without push (compile check)
@echo "Cloning repository..."
@rm -rf .tmp-brewman
@git clone --depth 1 $(if $(TAG),--branch v$(TAG)) git@git.tanshu.com:tanshu/brewman.git .tmp-brewman
@echo "Building image..."
@podman manifest rm brewman:test 2>/dev/null || true @podman manifest rm brewman:test 2>/dev/null || true
@podman build \ @podman build \
--platform linux/amd64,linux/arm64 \ --platform linux/amd64,linux/arm64 \
--manifest brewman:test \ --manifest brewman:test \
--pull \ --pull \
git@git.tanshu.com:tanshu/brewman.git .tmp-brewman || (rm -rf .tmp-brewman && exit 1)
@rm -rf .tmp-brewman
.PHONY: build-check-local .PHONY: build-check-local
build-check-local: ## Local build without push (compile check) build-check-local: ## Local build without push (compile check)