How it works - Getting Started

Kool works with Docker / Docker Compose under the hood, and comes with some cool presets to help you get started, everything is configurable / extendable.

Let's use Laravel preset as example and explain how it works.

When you run kool preset laravel all it does is create a few files for you:

$ kool preset laravel
Preset laravel is initializing!
  Preset file created.
  Preset file docker-compose.yml created.
  Preset file kool.yml created.
Preset laravel initialized!

This is a file you can use in case you want to build your application to use in production, in Docker world every release is usually a new image built with your application on it.

Soon we will give more examples on how to use Docker in production or use it with Kool Cloud.


This file defines all services that runs your application, docker images to use, ports, volume mounts, etc.

You can add/change/remove services as you will.


This is where most of the magic happens, a way to make your life easy, encapsulating scripts for you to use on your local environment or CI/CDs. It is created in your working directory when you run kool preset, but you can also create it inside a folder named kool in your user's home directory.

The scripts defined can be used with kool run