This project provides infrastructure as code to install three docker environments (dev, qa, prod) on bare metal hardware. Each environment is running a virtual machine with docker-compose running inside. All this is installed on bare metal using Debian preseed, ansible, and docker-compose.
To install the stack on a hardware host perform the following steps:
- Download a Debian 9 install medium and start it (not in UEFI-Mode to avoid an eror message)
- Go to
Advanced options
- Focus
Automated install
and press TAB key to edit the boot options - Add to the line that contains the parameters
auto=true priority=critical
the parameterpreseed/url=https://raw.githubusercontent.com/bob5ec/docker-infrastructure/prod/deploy/hardware.preseed
- Hit
Enter
to start the installation
During partitioning you might get asked if you want to force UEFI boot. It is save to say yes.
If you want to try the development version use change step 4 of the installation to
4. preseed/url=https://raw.githubusercontent.com/bob5ec/docker-infrastructure/dev/deploy/hardware.preseed
We use test-kitchen to run tests that work within docker to test the setup before actual deployment. Sadly creating VMs requires a physical installation to test on.
To release a new version go to deploy/hardware.preseed
and deploy/deploy-ansible.sh
search for TODO and set the branch to prod