&gt; source installation is too complex<p>Which is why a lot of smart people have invented these things called package managers. If your app needs a redis instance and a postgres instance, define dependencies on those two things in the package metadata.<p>&gt; Why do you think the Omnibus packages are a nightmare?<p>Because they force the use of bundled software in a virtual black-box. You are then dependent on the maintainer of the application to also keep up to date with security patches for every piece of software they bundle.<p>It also ties you to their setup process - a package that simply declares its requirements&#x2F;recommendations means that I can integrate it with my existing systems e.g. I can use a Debian config package to configure and install a redis instance how i want, and their software doesn&#x27;t need to worry about it.<p>I am amazed that people can say &quot;our product is a rails application, but we also bundle a postgres server and a redis server and nginx and ruby&quot; with a straight face. If you want to target potential users who find it too hard to use a package manager (which again, should be automatic or very close to it), provide pre-installed images for the major virtualisation&#x2F;containerisation platforms.