feat: add multi-arch Docker builds and Mac Mini deployment

- CI: Build Docker images for linux/amd64 + linux/arm64
- CI: Add manacore-web to build matrix
- Add docker-compose.macmini.yml for Mac Mini deployment
- Add cloudflared-config.yml for Cloudflare Tunnel routing
- Add Mac Mini deployment scripts and documentation
- Configure Cloudflared as launchd service for auto-start

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Till-JS 2026-01-22 19:17:37 +01:00
parent e02a94a29c
commit 4ebe3ec574
8 changed files with 823 additions and 0 deletions

View file

@ -61,6 +61,7 @@ jobs:
run: pnpm run lint || echo "Lint warnings found"
# Build Docker images - only on push to dev/main (not PRs)
# Multi-arch build: linux/amd64 (Hetzner) + linux/arm64 (Mac Mini)
build-docker-images:
name: Build ${{ matrix.service.name }}
runs-on: ubuntu-latest
@ -69,6 +70,7 @@ jobs:
matrix:
service:
- { name: 'mana-core-auth', path: 'services/mana-core-auth', port: '3001' }
- { name: 'manacore-web', path: 'apps/manacore/apps/web', port: '5173' }
- { name: 'chat-backend', path: 'apps/chat/apps/backend', port: '3002' }
- { name: 'chat-web', path: 'apps/chat/apps/web', port: '3000' }
- { name: 'todo-backend', path: 'apps/todo/apps/backend', port: '3018' }
@ -82,6 +84,9 @@ jobs:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
@ -118,6 +123,7 @@ jobs:
with:
context: .
file: ${{ matrix.service.path }}/Dockerfile
platforms: linux/amd64,linux/arm64
push: true
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}