Code and assignments for the "Building Autonomous Services" workshop module.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
assignments Rephrase a bit Oct 8, 2018
bin Run Composer through make Jan 11, 2018
src Remove the hint about JSON-decoded objects, simplify the logging Oct 8, 2018
var Initial version Jan 10, 2018
.gitignore Smarter setup Jan 11, 2018
.travis.yml Add 'make test' to make it actually work Apr 20, 2018
LICENSE Add a license Jan 11, 2018
Makefile Don't rely on PWD env variable, use pwd command Oct 25, 2018
behat.yml Add a system test and PhpStan Apr 20, 2018
composer.json Consume messages decoded to arrays Oct 8, 2018
composer.lock Consume messages decoded to arrays Oct 8, 2018
docker-compose.consumers.yml Improvements Jun 2, 2018
docker-compose.test.yml Remove Xdebug which complicates the setup Oct 8, 2018
phpstan.neon Add integration tests for entities Jun 2, 2018
phpunit.xml.dist Remove integration test suite Jun 6, 2018

Getting started

If you run into any problem, please post it as an issue on GitHub.

  1. For this project you need to have installed on your machine:

    • Docker Engine CE.
    • Docker Compose (install the latest stable version, don't use apt-get and the likes).
    • GNU Make (should be available if you're running Linux or Mac, just try make -v in a terminal).
    • Bash (same here, just try bash --version in a terminal).
    • Git (run git --version to see if you already have it installed).
    • A PHP IDE, preferably PhpStorm.
  2. Clone this project to your machine:

    git clone
  3. Next, cd into the project directory and run:

    make up

You should finally see a message asking you to open http://dashboard.localhost in your browser. When you do this, you should see a nice web application. Feel free to click around.


Docker says: "unknown option: cached"

You need to upgrade Docker.

Docker says: "Bind for failed: port is already allocated"

You have some service running that's already listening on port 80 (like a local Apache or Nginx or something). Close it first, then try again.

A note for Windows users

This setup should work on Windows too, with Docker for Windows and Git Bash.

If you feel like you won't be able to install all the tools listed above on your Windows machine, you may want to take a look at Get started with Docker Machine and a local VM).