Anyone using SlimToolkit (previously DockerSlim) understands the value of container optimization. What they might not appreciate is the additional value of using SlimToolkit within the broader feature set and support functions of the Slim.AI SaaS offering.
Let’s map it out:
tl;dr: The Slim.AI early access program gives developers an opportunity to explore these benefits in an evaluation environment that also allows them to help shape the product roadmap for the platform. Slim.AI recently released an X-Ray report upload feature that creates a strong connection between SlimToolkit and the Slim.AI platform.
In this blog post, we draw out some of the key reasons why a developer might benefit by using the free Slim.AI SaaS in conjunction with the SlimToolkit open source project. But first, let’s look at why developers would choose to use SlimToolkit in the first place.
Developers are feeling the pressure to deliver containers that follow best practice guidelines. In the past, doing that would have required them to rearchitect the way the containers are made. For instance, this could mean manually optimizing a container via the Dockerfile, or building a new image using a smaller base image like Alpine. But let’s be honest: that’s not in their skillset. It’s an expectation that introduces friction, relearning, and developer lag. In short, it’s an unreasonable expectation to put on developers.
SlimToolkit is a popular choice for developers because they can just insert it into their existing tooling and processes. Without having to change anything, they get optimized small containers that deploy faster and have much smaller attack surface, which makes them more observable in terms of auditing before shipping to production. They get the large well-instrumented containers they need for local, iterative development AND secured, production-ready containers without all that friction.
Developers know and are comfortable with several platforms and processes that just don’t make sense to get rid of. Ubuntu, my personal favorite, is one of those platforms. About 60-70% of the public cloud runs on Ubuntu, and it comes with a large pool of resources and a strong ecosystem that keeps developers loyal to it. SlimToolkit allows them to achieve these smaller containers and importantly, iterate locally while still building on the familiar and stable Ubuntu OS. They can still satisfy the requirements of their DevOps or DevSecOps teams without having to add “container expert” to their resumé.
GitOps workflow is another example, where a group of containers that operate as a logical whole are revisioned, tagged, and deployed together in a known state Developers don’t want to move away from any base operating system that is well-understood in order to achieve best practices. SlimToolkit and Slim.AI SaaS make this possible.
It’s probably useful here to pause and remember: Not all developers are container experts, nor do they need to be. So, there is a big benefit to developers in using the Slim.AI platform along with SlimToolkit to optimize their containers. The Slim.AI platform gives developers a detailed view into what was removed from their containers in the optimization process. This is huge. SlimToolkit shows you the before and after, but not what happened in between. The Slim.AI platform takes this a big step forward and gives developers a detailed view of the changes made to each file at each step of the process. This is a powerful tool for developers in optimization and debugging.
Another important consideration is that in the emerging multicloud world, workloads are moved around for optimization in order to take advantage of the best pricing and speed for deployment. An example would be moving images to AWS from Docker Hub to have container images closer to the deployment target. Slim.AI creates a meta-repository by connecting to the most popular container registries in one place, giving developers a single view of their container landscape as their images shift from one cloud provider to another. CI/CD becomes more of a reality for developers thanks to Slim.AI and SlimToolkit.
Here’s an example: a data scientist in the SlimToolkit community was getting pushback from their DevOps team because containers were very large, making them difficult to move as needed. Through watching live streams offered up in the Slim.AI community, they were able to use SlimToolkit to optimize their containers, but the slimmed container initially emerged inoperable. Being a data scientist and not a container expert, they were stuck on what to do next.
Then, using the Slim.AI platform, the data scientist was able to explore and identify some files that had been removed by SlimToolkit that were required for their container to run. They were able to create an inclusion in Slim.AI that retained these essential files in the slim container. The result was a fully operable container that was still reduced from 1.3 gb to 240 mb, making it much more agile, and making the DevOps team much happier.
The result was a fully operable container that was still reduced from 1.3 GB to 240 MB, making it much more agile, and making the DevOps team much happier.
Looking ahead, the Slim.AI platform is slated to add some exciting features. A better user interface in the SaaS version will work to democratize the process. The flags that are needed for particular workflows will be easier to find. Failure modes will be easier to debug. Auditing, tracking, and a directory of files will empower developers to just be developers and continue being experts in what they do.
The new Slim.AI platform will also add the capability to create Collections: a defined group of containers that operate as a logical whole. With the Slim.AI platform, containers that iterate, move, and are revisioned at their own speed can also be explored, tagged, and deployed together in a known state. Connections to AWS ECR, GCR, and Docker Hub are already available, with more integrations coming soon.
When it comes to security, the Slim.AI platform has a solution that doesn’t require deep knowledge of the Linux container primitives, adding another important integrated feature for container management. SlimToolkit stores AppArmor and SecComp files in a temporary folder that can be difficult to find. However, in the SaaS platform, a Docker Compose file can be generated that gives developers the YAML that is typically handwritten during the course of setting up a multi-container application, making it easier to manage and track changes in an application over time.
Joining the early access program is as easy as clicking here and registering. In addition to access to this powerful developer tool, you’ll also gain access to:
We care about the developer experience. It’s core to our values at Slim.AI. Using SlimToolkit and participating in the Slim.AI SaaS early access program is a clear way to avoid unnecessary developer effort in the pursuit of improving the quality of your production ready containers. Joining is, of course, free. Just share with us what you’re learning, and help us make the platform better for every developer who just wants to write and ship great code.
Martin Wimpress is leads community efforts at Slim.AI. Prior to Slim, he was Director of Engineering at Canonical, where he focused on supporting the Ubuntu community. He is project lead for the Ubuntu MATé Desktop project and contributes to QuickEmu and Retro Home. He livestreams regularly on Twitch at Wimpy's World.