Extensions are great for expanding the capability of Docker Desktop. We’re proud to feature this extension from Slim.AI which promises deep container insight and optimization features. Follow along as Slim.AI walks through how to install, use, and connect with these handy new features!
A version of this article was first published on Slim.AI’s blog.
We’re excited to announce that we’ve been working closely with the team at Docker developing our own Slim.AI Docker Extension to help developers build secure, optimized containers faster. You can find the Slim Extension in the Docker Marketplace or on Docker Hub.
Docker Extensions give developers a simple way to install, and run helpful container development tools directly within the Docker Desktop. For more information about Docker Extensions, check out https://docs.docker.com/desktop/extensions/.
The Slim.AI Docker Extension brings some of the Slim Platform’s capabilities directly to your local environment. Our initial release, available to everyone, is focused on being the easiest way for developers to get visibility into the composition and construction of their images and help reduce friction when selecting, troubleshooting, optimizing, and securing images.
Why should I install the Slim.AI Extension?
At Slim, we believe that knowing your software is a key building block to creating secure, small, production-ready containers and reducing software supply chain risk. One big challenge many of us face when attempting to optimize and secure container images is that images often lack important documentation. This leaves us in a pinch when trying to figure out even basic details about whether or not an image is usable, well constructed, and secure.
This is where, we believe, the Slim Docker Extension can help.
Currently, the Slim Docker extension is free to developers and includes the following capabilities:
Available Free to All Developers without Authentication to the Slim Platform
- Easy to access deep analyses of your local container images by tag with quick access to information like the local arch, exposed ports, shells, volumes, and certs
- Security insights including whether the containers runs with a root user and a complete list of files that have special permissions
- Optimization opportunities including a counts of deleted and duplicate files
- Fully searchable File Explorer filterable by layer, instruction, and file type with the ability to view the contents of any text-based file
- The ability to compare any two local images or image tags with deep analyses and File Explorer capabilities
- Reverse engineered dockerfiles for each image when the originals are not available
Features available to developers with Slim.AI accounts (https://portal.slim.dev):
- Search across multiple public and authenticated registries for quality images including support for Docker Hub, Github, DigitalOcean, ECR, MCR, GCR, with more coming soon.
- View deep analysis, insights, and File Explorer for images across available registries prior to pulling them down to your local machine.
How do I install the extension?
- Make sure you’re running Docker Desktop version 4.10 or greater. You can get the latest version of Docker Desktop at docker.com/desktop.
- Go to Slim.AI Extension on Docker Hub. (https://hub.docker.com/extensions/slimdotai/dd-ext)
- Click “Open in Docker Desktop”.
- This will open the Slim.AI extension in the Extensions Marketplace in Docker Desktop. Click “Install.” The installation should take just a few seconds.
How do I use the Slim.AI Docker Desktop Extension?
- Once installed, click on the Slim.AI extension in the left nav of Docker Desktop.
- The Slim.AI Docker Desktop Extension will list the images on your local machine.
- You can use the search bar to find specific images by name.
- Click the “Explore” button or carrot icon to view details about your images:
- The File Explorer is a complete searchable view into your image’s file system. You can filter by layer, file type, and whether or not it is an Addition, Modification, or Deletion in a given layer. You can also view the content of non-binary files by clicking on the file name then clicking File Contents in the new window.
- The Overview displays important metadata and insights about your image including the user, certs, exposed ports, volumes, environment variables, and more.
- The Docker File shows a reverse engineered dockerfile we generate when the original dockerfile may not be available.
- Click the “Compare” button to compare two images or image tags.
- Select the tag via the dropdown under the image name. Then, click the “Compare” button in its card.
- Select a second image or tag, and click the “Compare” button in its card.
- You will be taken to a comparison view where you can explore the differences in the files, metadata, and reverse engineered dockerfiles.
How do I connect the Slim.AI Docker Desktop Extension to my Slim.AI Account?
- Once installed, click on the “Login” button at the top of the extension.
- Sign in using your GitHub, GitLab, or BitBucket account. (Accounts are free for individual developers.)
- Navigate back to the Slim Docker Desktop Extension
- Once successfully connected, you can use the search bar to search over all of your connected registries and explore remote images before pulling them down to your local machine.
What if I don’t have a Slim.AI account?
The Slim platform is currently free to use. You can create an account from the Docker Desktop Extension by clicking the Login button in the top right of the extension. You will be taken to a sign in page where you can authenticate using Github, Gitlab, or Bitbucket.
What’s on the roadmap?
We have a number of features and refinements planned for the extension, but we need your feedback to help us improve. Please provide your feedback here.
Planned capabilities include:
- Improvements to the Overview to provide more useful insights
- Design and UX updates to make the experience even easier to use
- More capabilities that connect your local experience to the Slim Portal
Interested in learning more about how extensions can expand your experience in Docker Desktop? Check out our Docker Hub extensions library or see below for further reading: