This Week in Programming: Rancher’s Docker Desktop Replacement
Here we are at the end of another week, yet again discussing the idea of replacing Docker Desktop, after SUSE announced the latest version of Rancher Desktop this week and the news made it to the top of Hacker News under the title “Rancher Desktop, a Docker Desktop Replacement.”
If you haven’t been paying attention to the whole ordeal, you might have the same reaction as at least one Hacker News commenter, who asks “Did the founder of Docker kick a bunch of puppies or something? Is there some reason I’m missing why we should be angry about being asked to pay for something that everyone uses for everything and derives a lot of value from?”
Now, my own take is that we all live in a world of internet entitlement these days, where we expect any and all software to be free — something I don’t claim to be exempt from — and that even though Docker made the change to explicitly target companies with more than 250 employees or more than $10 million in annual revenue, we’re all still looking for a lifeboat. This, by the way, is not the first lifeboat, either, as we already examined the potential of Podman, shortly after the news of Docker Desktop’s new pricing broke.
So, the question remains: can Rancher Desktop replace Docker Desktop?
It’s only a matter of time before Rancher Desktop catches up with Docker Desktop, they’ve recently added support for nerdctl as a Docker-compatible CLI that uses containerd, but it doesn’t yet support Windows containers (WIP)
— Marc-André Moreau (@awakecoding) October 13, 2021
According to Sheng Liang, president of engineering and innovation at SUSE, and previously the co-founder and CEO of Rancher before its acquisition, Rancher Desktop was designed primarily as a Kubernetes development environment for the desktop and is centered around Kubernetes. So, first off, (and as pointed out in the Hacker News comments) it is not a drop-in replacement for Docker Desktop, as it does not support Docker Swarm. For Kubernetes developers and “some container developers,” Liang wrote in an email, it is “possible to use Rancher Desktop as a replacement for Docker Desktop.”
“The initial focus of Rancher Desktop and Docker Desktop were different,” wrote Lian. “Supplying a desktop application for Kubernetes developers has caused Rancher Desktop to have a high degree of feature functionality overlap with Docker Desktop.”
My attempt to switch from Docker Desktop entirely ended in me embracing @Podman_io. Especially since nerdctl (its in Rancher Desktop) required some changes to WSL to work well.
Now, just need to build my workflow around k8s pods, instead of docker compose, and we’re golden 😁
— Dr Kelewele 🇬🇭 (@MichaelEssandoh) October 15, 2021
Liang goes on to explain that the goal for Kubernetes developers with Rancher Desktop was to “provide a local foundational stack where they can build and run their containers and run their applications in Kubernetes” and that “Rancher Desktop lets developers choose the version of Kubernetes they want to use and easily restore the environment to a default setup. Those who are only interested in container development may also be able to use Rancher Desktop.”
Of course, none of this is to mention the fact that Rancher Desktop is still just v0.5 and has a lot of growing to do, though Liang says that it is on track for general availability in 2022 with “several major features coming before GA.”
Now, if you want a full comparison of the two and a verdict on whether or not Rancher Desktop can actually serve as a Docker Desktop replacement of some variety, certainly don’t rely on these general musings, but rather check out this video by Upbound.io developer advocate Viktor Farcic, who directly compares the two products and comes to a definitive conclusion.
This Week in Programming
- A Proposal to Speed Up Python: First up this week, Infoworld has the story of how Python may lose its Global Interpreter Lock (GIL) but gain a lot of speed if the proposal by Facebook developer Sam Gross is accepted. The proposed change would involve “changes to CPython to allow it to run without the global interpreter lock”, which is a core component of CPython, and would address Python’s inability to scale in multithreaded environments. According to Infoworld, “many efforts have been made to remove it over the years, but at the cost of hurting single-threaded performance—in other words, by making the vast majority of existing Python applications slower.” Gross, meanwhile, writes that “the proof-of-concept is to demonstrate that removing the GIL is feasible and worthwhile.” According to Gross’s design overview, the proposal is also intended to sell the idea “that the tradeoffs are manageable and the effort to remove the GIL is worthwhile,” which he does by providing benchmarks to show that this approach doesn’t greatly degrade performance.
Been thinking a lot about how much I hate live coding exercises as part of interviews and I was reminded of my favorite one:
The person asked me to implement a binary tree in Python, so I wrote “import binarytree”
I got the job 🤷🏼♀️
— Terra Field (@RainofTerra) October 14, 2021
- Visual Studio Gets a Launch Date: For you Visual Studio users, there are several updates to keep up with this week. First, while the previews aren’t quite finished yet (see below), it looks like Visual Studio 2022’s official launch is just around the corner, with a launch date set for Nov. 8. In fact, along with the release date, Visual Studio 2022 also has a Release Candidate (RC) out, alongside Preview 5, which mostly adds Xcode support and fixes a few bugs. Visual Studio 2022 will arrive at a virtual launch event on Nov. 8 at 8:30 a.m. Pacific Time, with a keynote from Scott Hanselman, and will include guest speakers, the ability to talk back to the Visual Studio team, and “exclusive digital swag”.
- Visual Studio 2022 for Mac Preview 2: Beyond the aforementioned Preview 5, also out this week is Visual Studio 2022 for Mac Preview 2, following last month’s Visual Studio 2022 for Mac Preview 1. Preview 2 primarily introduces support for the new .NET 6 Release Candidate 2 (RC2) release on Intel-based Macs, which also debuted this week. As with all the other previews, this can be installed side-by-side with Visual Studio 2019, and the Visual Studio team is looking for suggestions and problem reports. To use .NET 6 RC2, you’ll need to manually install it, but take note that running .NET 6 RC2 in Visual Studio for Mac on the M1 (ARM64) processor architecture isn’t currently supported. Keep an ear out for that. Visual Studio for Mac Preview 2 also continues the work of moving to the fully native macOS UI, while also adding some bug fixes, as detailed in the release notes.
- Visual Studio Gets VS Code Themes, Extensions Course: Last up in the world of Visual Studio, Microsoft is offering a new video series of nine videos to help developers learn to write Visual Studio extensions, which starts at getting you set up with the right tools and environment, before taking you all the way through building an extension. Beyond that, Visual Studio 2022 users can bring Visual Studio Code (VS Code) themes to Visual Studio 2022 with the newly released Theme Converter tool, which converts color tokens from a VS Code theme and applies them to Visual Studio. The team already shared a collection of new community themes created using this tool, and now end users can do it themselves. They note that “converted themes look their best with C# and C++ repos” and are most compatible with Visual Studio 2022 Preview 3 and above.
Our treadmill cannot be used as a treadmill until it has an IP address: an internet of shit story.
— Abby Fuller (@abbyfuller) October 14, 2021
- GitLab’s Kubernetes Operator Arrives: While the news of GitLab going public may be grabbing all the headlines, we’re more interested in the news that GitLab’s Kubernetes Operator with support for Red Hat OpenShift is now generally available. The GitLab-supported GitLab Operator, which offers the ability to run production instances of GitLab on Kubernetes platforms, including Red Hat OpenShift, follows the beta release of the GitLab Operator earlier this year. GitLab says that, over the past 6 months, it has “worked closely with Red Hat to discuss technical details and optimize compatibility” and now the Operator will help to automate tasks such as installation, configuration, and upgrades. While the GitLab Operator is offered “in tandem” alongside the Helm Chart, GitLab notes that the Operator “offers extended capabilities beyond the Cloud Native Helm Chart” by not only deploying GitLab, but also securing the deployment against unwarranted changes and keeping it up-to-date as components are versioned. For those of you using Red Hat OpenShift, certification is “coming soon”.
look i’m not saying a hyper intelligent descendant of our current civilisation travelled back in time to influence the future with technology so horrible it would slow down our growth in order to protect us from future war
but i am saying if they did it would be the blockchain
— kris nóva (@krisnova) October 14, 2021