iac-env / Part 1 - Introduction

Welcome to my learning adventure about infrastructure as code! At the time of authoring these articles I had just begun some work that required me to skill up a bit with Amazon Web Services and learn some tools that can assist with automation of provisioning cloud resources. All of this was very new to me and I started to experiment with tools and techniques to build up my knowledge - I figured I could write up my experience here and share the knowledge I’ve gathered. No doubt some of this stuff will seem very basic to those who have been in the profession for a while but we all gotta start somewhere!

In these articles I will explain the approach I took to create a self contained Docker image that acts as both a developer sandbox for writing cloud stuff locally, as well as being a build agent in a Jenkins build pipeline to perform the building, testing and deployment of cloud resources.

The tech

We will I use a bunch of interesting tools in this experiment, a number of which I had never used before:

The goals

The goals are:

What you will need

Although I did most of the dev for this series in Linux Mint, I wrote up these blog articles on my MacBook Air testing it along the way on MacOS and found a bunch of differences running Docker on MacOS compared to Linux! I’ve tried my best to make sure this experiment can be run on MacOS as well as Linux but to be honest I found doing it on MacOS to be a pain compared to Linux.

Source code can be found at: https://github.com/MarcelBraghetto/iac-env

Continue to Part 2: Create iac-env Docker image.

End of part 1