A local development tool to replace Docker Compose, based on Make.
Makeup uses Makefiles to create a faster development workflow for microservices (when compared to Docker and docker-compose). It uses locally installed tools and a version-checking mechanism to get reasonably repeatable builds, and configures + runs things (like multiple microservices) in parallel, a la docker-compose.
The makeup
command builds all of the components of your application and runs them together without needing containers.
To use makeup
, you'll create:
- The
main.mk
file (which includes tool version checks). - Individual component
.mk
files (withbuild
,run
,test
,env
, andclean
targets). - Optional autogenerated
Makefile
, which allows anyone who isn't usingmakeup
to build and run your project just as easily (by runningmake up
).
The makeup
tool is required to get started (and to get the best experience), but not required for anyone else to use your project (which might be the best part).
โจ Check out the full usage instructions โจ
Implemented:
makeup
: builds each component sequentially, and then runs your entire projectmakeup test
: tests each component sequentiallymakeup clean
: cleans each of the components in the project
In progress:
makeup generate
: generates the mainMakefile
for anyone to use.
Here's an example (from this repo!):
That's it for now.
Copyright Connor Hicks and external contributors, 2023. Apache-2.0 licensed, see LICENSE file.