AWS CodeBuild provides a managed way to provide so-called āself-hostedā runners for your GitHub Actions workflows.
CodeBuild does not offer a long-running runner, but instead provisions a new instance for every job. It uses CodeConnections to install a webhook at the repo or org level. This webhook subscribes to multiple events and ensures that a CodeBuild instance starts if a job begins with a matching runs-on.
Whatās not always obvious (and often confusing):
To understand these nuances, letās look at a few scenarios. In all cases, assume a CodeBuild project is configured to use EC2 as the compute option.
aws ci docker githubSlim containers are faster (less stuff to move around) and more secure (fewer places for vulnerabilities to sneak in). However, these benefits of slim containers come at a price - such containers lack (the much-needed at times) exploration and debugging tools. It might be quite challenging to tap into a container that was built from a distroless or slim base image or was minified using DockerSlim or alike. Over the years, I've learned a few tricks how to troubleshoot slim containers, and it's time for me to share.
dockerWe are very familiar with running CLI processes in Docker containers with no Graphical UI at all. But did you know that you can just as well run applications with a graphical user interfaces, like Chrome, Firefox, Tor Browser, Gimp, etc⦠with Docker⦠on OS X!
tutorial docker