Change is inevitable, and while commits on Dockerfiles are easy to control, the impact of those changes on the resulting image are not. Fortunately, where thereβs a need, thereβs a tool.
Tomas Fernandez

The Benefits of Acceptance Testing
In this article, Iβd like to talk about one of the most complex forms of testing, one that will tell us when we have met our software design goals:Β Acceptance Testing.
Continuous Container Vulnerability Testing with Trivy
Without security in your CI/CD, sooner or later, a vulnerability will sneak in, and before you know it, someone will be mining at your expense.
Secure Your Kubernetes Deployments
A recent survey by Red HatΒ found that more than half of the Kubernetes environments are misconfigured. Even worse, about 90% of respondents had at least one security incident last year, leading to the very first wave ofΒ Kubernetes-native malware. In this tutorial, we present three tools to validate and secure your Kubernetes deployments.
Structure Testing for Docker Containers
We don’t pay attention to containers β until something breaks. Structure tests let us check container vital before deployment.
Revving up Continuous Integration with Parallel Testing
Is your CI/CD pipeline slow? Do wait times make you feel unproductive? Parallel testing is an indispensable technique for reducing wait times. And mastering it is key to getting the most out of CI/CD.
Beyond Docker with Earthly
Is Earthly the Docker Killer? Docker is great, as long someone else writes all the shell scripts and Dockerfiles. Earthly is a new build tool that works on top of Docker and brings a much welcome friendlier user experience.
TypeScript Monorepos with Yarn
A tutorial showing how to configure TypeScript to work in a monorepo and building everything with CI/CD.
Introducing the Second Edition of the CI/CD with Docker and Kubernetes eBook
The second edition of CI/CD for Docker and Kubernetes is out. With important updates and brand-new pipelines. Download it today!
JavaScript Monorepos with Lerna
Do you have multiple JavaScript or Node projects in one repo? If so, you need to learn how to use Lerna – the JavaScript monorepo manager.
Building Python Projects at Scale with Pants
Learn how to build Python projects and monorepos at scale with the Pants Build System.
A First Look at AWS App Runner
AWS App Runner is a service for people just wanting to run their containers without hassles. In this post, we’ll learn how to use this far-simpler-than-ECS-and-Fargate alternative, explore how it fares against its competitors and, of course, how to continuously deploy software with Semaphore.
Scaling out JavaScript Monorepos with Yarn Workspaces
Monorepos are coming into mainstream, and JavaScript is one of the reasons. Learn how to leverage Semaphore’s monorepo innovations.
Continuous Integration for Monorepos
Learn how to best take advantage of Semaphoreβs new features to design and run faster CI/CD pipelines on monorepos.
Design an Effective Build Stage for Continuous Integration
The first move towards releasing software is the build stage. Learn how to take full advantage of Semaphore to run fast build pipelines.