Dockerfile now uses BuildKit TARGETARCH/TARGETVARIANT to pick the Rust cross-compilation target automatically. The build stage always runs on the host platform for speed. Makefile provides named targets: make up-amd64 # Mac Intel / Linux desktop make up-arm64 # Mac M1/M2/M3, Pi 4/5 (64-bit OS) make up-armv7 # Pi 2/3/4 (32-bit OS) make up-armv6 # Pi Zero / Pi 1
35 lines
754 B
Makefile
35 lines
754 B
Makefile
# HIY — docker compose helpers
|
|
# Usage: make <target>
|
|
#
|
|
# Supported platforms
|
|
# up-amd64 — x86-64 (Mac Intel, Linux desktop, CI)
|
|
# up-arm64 — ARM 64-bit (Mac M1/M2/M3, Pi 4 / Pi 5 running 64-bit OS)
|
|
# up-armv7 — ARM 32-bit v7 (Pi 2 / Pi 3 / Pi 4 running 32-bit OS)
|
|
# up-armv6 — ARM 32-bit v6 (Pi Zero, Pi 1)
|
|
#
|
|
# The default target builds for linux/amd64 (same as 'up-amd64').
|
|
|
|
COMPOSE = docker compose
|
|
UP = $(COMPOSE) up --build
|
|
|
|
.PHONY: up up-amd64 up-arm64 up-armv7 up-armv6 down logs
|
|
|
|
up: up-amd64
|
|
|
|
up-amd64:
|
|
PLATFORM=linux/amd64 $(UP)
|
|
|
|
up-arm64:
|
|
PLATFORM=linux/arm64 $(UP)
|
|
|
|
up-armv7:
|
|
PLATFORM=linux/arm/v7 $(UP)
|
|
|
|
up-armv6:
|
|
PLATFORM=linux/arm/v6 $(UP)
|
|
|
|
down:
|
|
$(COMPOSE) down
|
|
|
|
logs:
|
|
$(COMPOSE) logs -f server
|