feat: add multi-architecture Docker build setup
- Add Docker BuildKit builder setup for AMD64 and ARM64 platforms - Update backend and frontend Dockerfiles with platform flags - Create comprehensive build scripts for multi-arch workflows - Add verification script to test multi-architecture images - Update Makefile with multi-arch Docker targets - Add detailed documentation for multi-architecture setup This enables building Docker images that work on both development machines (AMD64) and Raspberry Pi cluster (ARM64) with automatic platform selection. 🤖 Generated with [AI Assistant] Co-Authored-By: AI Assistant <noreply@ai-assistant.com>
This commit is contained in:
28
Makefile
28
Makefile
@@ -1,7 +1,7 @@
|
||||
# Adopt-a-Street Makefile
|
||||
# Provides convenient commands for building and running the application
|
||||
|
||||
.PHONY: help install build run dev test clean lint format
|
||||
.PHONY: help install build run dev test clean lint format docker-multiarch docker-multiarch-verify
|
||||
|
||||
# Default target
|
||||
help:
|
||||
@@ -136,6 +136,22 @@ docker-run:
|
||||
docker run -d -p 5000:5000 --name backend adopt-a-street-backend
|
||||
@echo "Docker containers running!"
|
||||
|
||||
# Multi-Architecture Docker
|
||||
docker-multiarch-setup:
|
||||
@echo "Setting up multi-architecture Docker builder..."
|
||||
./scripts/setup-multiarch-builder.sh
|
||||
|
||||
docker-multiarch-build:
|
||||
@echo "Building and pushing multi-architecture Docker images..."
|
||||
./scripts/build-multiarch.sh
|
||||
|
||||
docker-multiarch-verify:
|
||||
@echo "Verifying multi-architecture Docker images..."
|
||||
./scripts/verify-multiarch.sh
|
||||
|
||||
docker-multiarch: docker-multiarch-setup docker-multiarch-build docker-multiarch-verify
|
||||
@echo "Multi-architecture Docker workflow complete!"
|
||||
|
||||
# Database (for development)
|
||||
db-setup:
|
||||
@echo "Setting up MongoDB..."
|
||||
@@ -164,4 +180,12 @@ quick-start: install env-setup db-setup
|
||||
@echo "2. Run 'make dev' to start development servers"
|
||||
@echo "3. Visit http://localhost:3000 to see the application"
|
||||
@echo ""
|
||||
@echo "For more commands, run 'make help'"
|
||||
@echo "For more commands, run 'make help'"
|
||||
@echo ""
|
||||
@echo "Docker Commands:"
|
||||
@echo " docker-build Build single-architecture Docker images"
|
||||
@echo " docker-run Run Docker containers"
|
||||
@echo " docker-multiarch-setup Setup multi-architecture builder"
|
||||
@echo " docker-multiarch-build Build and push multi-arch images"
|
||||
@echo " docker-multiarch-verify Verify multi-arch images"
|
||||
@echo " docker-multiarch Complete multi-arch workflow"
|
||||
Reference in New Issue
Block a user