5 alternatives to Docker Desktop

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
foreign [Music] desktop was a classic and still is a classic tool for Windows and Mac OS users to install Docker and run Docker containers on their local machine it replaced recently Docker engine consolidating a lot of the docker tools together into a graphical interface the command line tools and all the other sub and related projects that Docker ships with like Docker compose and etc etc there were some recent changes to the way that Docker desktop was monetized and this upset quite a lot of hobbyists um I don't know if you're an individual developer it didn't really affect you so much but it affected lots of developers inside of companies and generally people just don't like it when things change especially when that changes things like pricing I.E there wasn't any before and now there is in this video I'm going to take a look at some alternatives for running Docker primarily on Mac but some of them of course will apply on all operating systems so let's get started before we look at the Alternatives it's probably a good idea to have a quick look at Docker desktop itself to see what we're comparing to there is a Homebrew formula available or of course you can just install from the website and then you open up the visual GUI it also just has command line commands that have been installed alongside it but this is kind of mostly what we're going to compare to there's quite a lot of settings about the viewage and Telemetry the resources you want to share between the host and the guest system Docker engine customizations beta features I tend to enable most of these if you want kubernetes enabled or not software updates I always manage myself through Homebrew and then extensions which is a new Docker feature that I haven't tried yet you could see there's a listing of containers images volume shared and Dev environments which is a new feature but we're mostly interested in containers and images for this video so we go to the command line if you've ever used Docker before this will probably be fairly familiar it's a Docker run with some parameters ports and the image you want to use which in this case is the httpd server you can go to name if we want this is the name of the container or you get an auto generated one hit enter give it it really depends on the size of the image to download the image this one is pretty small spits out a container ID and if we go into the browser on the port that will set and there is the container running so with a running container we can now see on the container listing there it is we can jump into a bunch of different options around it viewing it in a bunch of different ways in different parameters of it we can also restart it jump into the terminal of it here I can also take a look at the image dig into some more detail of what's behind that image from the docker file and then finally we can actually delete it before I dive in to the main alternatives to Docker desktop I just want to talk about two others that I tried that didn't really work for me but one especially might work for you the first one is VMware Fusion this can run containers as well as virtual machines so you can have everything in one place but it only works on Intel max if you try and run the commands on Apple silicon Max it looks like it's going to work but it doesn't you get some errors and then it all fails the other option is parallels sort of again giving you that option to combine virtual machines and containers together but it's more as a back end for kubernetes not just the containers themselves so I may make a video in the future looking at alternative back ends for kubernetes instead of using Docker desktop or others but for this video I excluded those one because one didn't work and one because it was primarily just for kubernetes containers but they may work for you podman and podman desktop are almost sort of direct replacements for Docker and Docker desktop you can install podman with Homebrew and the commands take basically the same format as the docker commands but you use podman instead of docker when you have installed it you first need to init a machine which downloads a Linux virtual machine and uses quemu to connect to that virtual machine and you also need to run podman machine start so you do need to remember to run that start command unless you have it just running all the time which is not something I generally want but you might not be but so bothered setting up this virtual machine can take a little bit of time it depends on your internet connection and some other things they did hit some errors once in a while as well remove it start again and it worked eventually once you've done that then the process is pretty similar as I say you need to use podman instead of Docker and you do need to specify where the image is coming from because Docker will assume it's coming from the docker repository but these other tools don't assume that so to run the same container we run in the docker example you need to put the full path to the image source and run it again using all the same other parameters we get a container ID and then if we go to the browser and again connect to the port we exposed you should see the container running and removing and stopping containers and images Etc are all the same commands you would use with Docker but as I said before so using the command Docker you use the command podman podman does also have its own desktop application which you can install from a separate Homebrew formula or from their website it looks similar ish to dock a desktop in that you see an overview you see a list of containers a list of images and also some kubernetes interaction points as well which I'm not covering here is the container that we already have running and some similar inspect executing the terminal etc etc commands as well so here but the terminal in this case is part of desktop not my terminal and logs also an overview of the resources it's using we can also look in the images and similarly see what the docker file looks like this is the Pod section for kubernetes if you use that the volumes that are mounted It's relatively straightforward not a massive amount to it but has all the basics you would need the settings again are also similar a little bit differently laid out you can authenticate with registries you can use extensions to it you can also use Docker desktop extensions again I haven't really looked into them yet and there's a more General preferences as well Kalima is a container runtime that supports Docker and container d as a back end but default it uses Docker which you do need to install as a dependency with a bit of a method you want you then need to start the virtual machine which downloads a virtual machine image a Linux virtual machine image again and you'll see the progress of it as it downloads this can take a little bit of time whether once it's done you can run Docker commands as normal there we go so so far not doing anything massively different apart from running those Docker containers in a different image The Way Things become more interesting is if you use container D instead of Docker the easiest way to do this is using kalima's wrapper command which then installs nerd CTL which is a tool for interacting with container d you then restart Kalima using that runtime instead of Docker and once it's installed all of its dependencies you can then use familiar Docker commands but instead of using Docker you use nerd CTL instead you'll see the output is a bit different a little bit more visual you'll also see there are certain Flags you can't set with container D so we have to change some of the arguments you might just be copying and pasting from from Docker examples a little but then it works and it works basically how you'd expect it to work with with Docker another option with considering is ranch desktop from Rancher it's been around a little while and like some of the other options you can use it for kubernetes and containers it has a Homebrew format available you can also download it from their website and similarly to other tools it wraps several other tools behind the scenes like Helm Cube TTL and the docker command itself once it's installed which can take a little bit of time it also takes a little bit of time to set up downloading virtual machines depending on what options you select giving it permissions etc etc it does a good job of describing what all of these will be but it can take a little bit of time to download everything it needs with all of that out of the way let's take a tour of the interface it will seem fairly familiar from some of the other tools we've looked at so far in this video so you have a painful images an overview screen a settings section where there's actually quite a lot you could do but bear in mind almost every change you make involves a restart you can switch between container D and Docker as an option as well port forwarding options a library of images depending on the runtime you selected so I selected container D I find the interface slightly odd and different from some of the others because it doesn't show you running containers just images so it lacks some of the features of some of the other tools it can be useful for certain use cases and looking around their website I kind of get the impression they're mostly aiming at kubernetes management and configuration which makes sense with ranch's business model so I think I'll take another look at Rancho I do a separate Roundup on kubernetes management tools so it feels like with a lot of these that's really where they are going to be honest with you but it's another option if you want some visual interface to some Docker or containerdy features so I guess the question at the end of this Roundup where I looked at Docker desktop itself hot man Kalima Rancher desktop and then your mileage may vary on VMware fusion and parallel desktop so the question is always Chris what do you use well I'm glad you asked and I think I kind of alluded to this maybe throughout the video I think for now for me when I'm doing my own thing Docker desktop is is perfectly fine for my use case I think I also like the fact that even though it's experimental I can switch to using the Mac OS hypervisor which sort of gives me Peak Performance at the sacrifice of some features or switch to the docker runtime as well so I will probably stick with that for now if I was to move from it then probably I think I preferred pod man I think I would switch to podman the podman desktop so so but the actual sort of tool itself fair enough Kalima was also pretty good to be honest with you when it came to that moment I would probably weigh them up again to see what had changed so that's my wrap up that's my decision there not really a decision I already made it let me know what you use in the comments and why that would be super useful and if you're interested I will probably be back in a month or so with a kubernetes Roundup of a similar thing because we saw already that lots of them already have kubernetes type features so it makes sense to maybe look at something similar and there's some other tools as well like lens which I use for kubernetes a lot of the time so I will come back with that and if you subscribe you'll get a notification if you enjoyed what you saw please do subscribe leave a comment even a thumbs up would be great and you can find out more about me at christianzilla.com where you can find all my other projects and output too so enjoy your container running and I'll see you next time thank you very much everybody [Music]
Info
Channel: Chris Chinchilla
Views: 8,242
Rating: undefined out of 5
Keywords: Docker, Containers, Containerd, Kubernetes, Podman, Colima, Rancher, Cloud native, Development, Local development
Id: C88x0ZnUEqc
Channel Id: undefined
Length: 13min 2sec (782 seconds)
Published: Thu Dec 15 2022
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.