Hostityourself/infra/Makefile
Claude b060ec68af
Add start.sh and Makefile build-only targets
start.sh builds via 'make build' (platform auto-detected) then starts
services detached with 'docker compose up -d'.

Makefile gains build/build-<platform> targets that build images without
starting, mirroring the existing up/<platform> targets.
2026-03-20 10:06:24 +00:00

55 lines
1.6 KiB
Makefile

# HIY — docker compose helpers
# Usage: make <target>
#
# Default (make up) — auto-detects the host platform.
#
# Explicit cross-compile targets:
# up-amd64 / up-x64 / up-win — linux/amd64 (Mac Intel, Windows, Linux x86)
# up-arm64 — linux/arm64 (Mac M1/M2/M3, Pi 4/5 64-bit OS)
# up-armv7 — linux/arm/v7 (Pi 2/3/4 32-bit OS)
# up-armv6 — linux/arm/v6 (Pi Zero, Pi 1)
COMPOSE = docker compose
BUILD = $(COMPOSE) build
UP = $(COMPOSE) up --build
.PHONY: build build-amd64 build-x64 build-win build-arm64 build-armv7 build-armv6 \
up up-amd64 up-x64 up-win up-arm64 up-armv7 up-armv6 down logs
# ── Build only (no start) ─────────────────────────────────────────────────────
build:
$(BUILD)
build-amd64 build-x64 build-win:
DOCKER_DEFAULT_PLATFORM=linux/amd64 $(BUILD)
build-arm64:
DOCKER_DEFAULT_PLATFORM=linux/arm64 $(BUILD)
build-armv7:
DOCKER_DEFAULT_PLATFORM=linux/arm/v7 $(BUILD)
build-armv6:
DOCKER_DEFAULT_PLATFORM=linux/arm/v6 $(BUILD)
# ── Build + start (foreground) ────────────────────────────────────────────────
up:
$(UP)
up-amd64 up-x64 up-win:
DOCKER_DEFAULT_PLATFORM=linux/amd64 $(UP)
up-arm64:
DOCKER_DEFAULT_PLATFORM=linux/arm64 $(UP)
up-armv7:
DOCKER_DEFAULT_PLATFORM=linux/arm/v7 $(UP)
up-armv6:
DOCKER_DEFAULT_PLATFORM=linux/arm/v6 $(UP)
down:
$(COMPOSE) down
logs:
$(COMPOSE) logs -f server