Skip to content

Fix M2 Mac compatibility for Docker images#1

Closed
jtomaszon wants to merge 5 commits intomainfrom
fix/m2-mac-compatibility
Closed

Fix M2 Mac compatibility for Docker images#1
jtomaszon wants to merge 5 commits intomainfrom
fix/m2-mac-compatibility

Conversation

@jtomaszon
Copy link
Contributor

Summary

  • Replace Percona with MySQL 8.0 to add ARM64 support
  • Use altmannmarcelo/readyset-mac for Apple Silicon compatibility
  • Enables the demo stack to run natively on M2/M3 Macs without Rosetta emulation

Test plan

  • Verified all containers start successfully on M2 Mac
  • Tested database connectivity through ProxySQL
  • Confirmed data is accessible (users and properties tables)

🤖 Generated with Claude Code

jtomaszon and others added 5 commits August 8, 2025 13:54
- Replace Percona with MySQL 8.0 (Percona lacks ARM64 support)
- Use altmannmarcelo/readyset-mac instead of official ReadySet image
- Both changes enable the stack to run natively on Apple Silicon

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Enable testing on both ubuntu-latest (x86_64) and macos-latest (ARM64)
- Add dynamic ReadySet image selection based on architecture
- Use readysettech/readyset:latest for x86_64
- Use altmannmarcelo/readyset-mac:latest for ARM64
- Update image architecture checks to handle both images

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Add ScaleDB CLI tool for managing the demo environment
- Create architecture-specific compose files (arm64.yml, x86_64.yml)
- Use environment variable approach in main docker-compose.yml
- Update CI workflow to use architecture-specific configurations
- Add comprehensive README with usage examples
- CLI features: start/stop, status, logs, MySQL connection, shell access

The CLI automatically detects architecture and applies the correct
configuration, making it seamless to run on both x86_64 and ARM64.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Focus CI testing on Linux x86_64 where Docker is readily available
- ARM64 compatibility is maintained through local testing
- Removes complex Docker setup for macOS runners which are expensive
- Updates README to clarify testing approach

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Remove the incorrect sudo command for starting Docker
- Use simple 'open -a Docker' to start Docker Desktop
- Add proper timeout and wait loop for Docker daemon
- Test on macos-latest (ARM64) instead of macos-13
- Remove third-party action in favor of direct brew install

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
@jtomaszon jtomaszon closed this Aug 8, 2025
@jtomaszon jtomaszon deleted the fix/m2-mac-compatibility branch August 8, 2025 18:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant