Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compare to docker-compose #310

Open
elgalu opened this issue Oct 17, 2016 · 3 comments
Open

Compare to docker-compose #310

elgalu opened this issue Oct 17, 2016 · 3 comments

Comments

@elgalu
Copy link

elgalu commented Oct 17, 2016

Hi, could someone summarize what's the difference between this project and docker-compose ? perhaps a short comparing note in the README can help.

Is it a drop in replacement?
Does it compensate it?

@michaelsauter
Copy link
Owner

michaelsauter commented Oct 17, 2016

Crane was written originally end of 2013, slightly before Fig appeared. Then, Fig was "accquired" by Docker and turned into docker-compose. Both tools do the same thing more or less now, in the beginning the difference was much bigger (docker-compose's configuration v2 looks a lot like Crane's).

Crane is not a drop-in replacement as the configuration format differs - though not very much. The biggest differences to my knowledge are:

  • Docker-Compose has support for overriding configuration (Crane also supports this now)
  • Crane has the concept of groups
  • Semantics of run/start etc. are slightly different
  • Crane supports excluding containers/groups or limiting to containers/groups
  • Crane has support for hooking into container lifecycle (e.g. executing sth. on start/stop)
  • Crane has nice support for setting image tag, container prefixes etc. via environment
  • And finally, very fresh, Crane integrates Unison with Docker for Mac (making it usable for bigger projects speed-wise)

Note these are the things from the top of my head, and that I'm probably biased ;)

@elgalu
Copy link
Author

elgalu commented Oct 17, 2016

:) thanks!

@michaelsauter
Copy link
Owner

A while ago, Crane has learned to read docker-compose's v3 file format. With some behaviour changes in Crane 3.3.0 (support for multiple networks + default network), it should be a drop-in for most use cases. There also is a dedicated list of compatibility notes at https://www.craneup.tech/docs/compatibility.

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

No branches or pull requests

2 participants