Container-Compose brings (limited) Docker Compose support to Apple Container, allowing you to define and orchestrate multi-container applications on Apple platforms using familiar Compose files. This project is not a Docker or Docker Compose wrapper but a tool to bridge Compose workflows with Apple's container management ecosystem.
Note: Container-Compose does not automatically configure DNS for macOS 15 (Sequoia). Use macOS 26 (Tahoe) for an optimal experience.
- Compose file support: Parse and interpret
docker-compose.ymlfiles to configure Apple Containers. - Apple Container orchestration: Launch and manage multiple containerized services using Apple’s native container runtime.
- Environment configuration: Support for environment variable files (
.env) to customize deployments. - Service dependencies: Specify service dependencies and startup order.
- Volume and network mapping: Map data and networking as specified in Compose files to Apple Container equivalents.
- Extensible: Designed for future extension and customization.
- A Mac running macOS with Apple Container support (macOS Sonoma or later recommended)
- Git
- Xcode command line tools (for building, if building from source)
You can install Container-Compose via Homebrew (recommended):
brew update
brew install container-composeOr, build it from source:
-
Clone the repository:
git clone https://github.com/Mcrich23/Container-Compose.git cd Container-Compose -
Build the executable:
Note: Ensure you have Swift installed (or the required toolchain).
make build
-
(Optional): Install globally
make install
After installation, simply run:
container-compose upYou may need to provide a path to your docker-compose.yml and .env file as arguments.
Contributions are welcome! Please open issues or submit pull requests to help improve this project.
- Fork the repository.
- Create your feature branch (
git checkout -b feature/YourFeature). - Commit your changes (
git commit -am 'Add new feature'). - Push to the branch (
git push origin feature/YourFeature). - Open a pull request.
This project is licensed under the MIT License. See the LICENSE file for details.
If you encounter issues or have questions, please open an Issue.
Happy Coding! 🚀