Kubernetes vs Portainer: What are the differences?
What is Kubernetes? Manage a cluster of Linux containers as a single system to accelerate Dev and simplify Ops. Kubernetes is an open source orchestration system for Docker containers. It handles scheduling onto nodes in a compute cluster and actively manages workloads to ensure that their state matches the users declared intentions.
What is Portainer? Simple management UI for Docker. Portainer is an open-source lightweight management UI which allows you to easily manage your Docker environments Portainer is available on Windows, Linux and Mac. It has never been so easy to manage Docker !.
Kubernetes and Portainer belong to "Container Tools" category of the tech stack.
Some of the features offered by Kubernetes are:
- Lightweight, simple and accessible
- Built for a multi-cloud world, public, private or hybrid
- Highly modular, designed so that all of its components are easily swappable
On the other hand, Portainer provides the following key features:
- Docker management
- Docker UI
- Docker cluster management
"Leading docker container management solution" is the primary reason why developers consider Kubernetes over the competitors, whereas "Simple" was stated as the key factor in picking Portainer.
Kubernetes is an open source tool with 54.2K GitHub stars and 18.8K GitHub forks. Here's a link to Kubernetes's open source repository on GitHub.
According to the StackShare community, Kubernetes has a broader approval, being mentioned in 1017 company stacks & 1060 developers stacks; compared to Portainer, which is listed in 23 company stacks and 17 developer stacks.
What is Kubernetes?
What is Portainer?
Need advice about which tool to choose?Ask the StackShare community!
Sign up to add, upvote and see more prosMake informed product decisions
What are the cons of using Portainer?
Sign up to get full access to all the companiesMake informed product decisions
Sign up to get full access to all the tool integrationsMake informed product decisions
Visual Studio Code worked really well for us as well, it worked well with all our polyglot services and the .Net core integration had great cross-platform developer experience (to be fair, F# was a bit trickier) - actually, each of our team members used a different OS (Ubuntu, macos, windows). Our production deployment ran for a time on Docker Swarm until we've decided to adopt Kubernetes with almost seamless migration process.
After our positive experience of running .Net core workloads in containers and developing Tweek's .Net services on non-windows machines, C# had gained back some of its popularity (originally lost to Node.js), and other teams have been using it for developing microservices, k8s sidecars (like https://github.com/Soluto/airbag), cli tools, serverless functions and other projects...
I use Portainer because it does so good with the UI that we don't have to train our whole team to be Linux bash heros. It provides deep details without leaving details behind you would think could only come from the command line. Portainer is a professional tool that gives us enterprise features we appreciate. ( Will be blogging about this in January. )
I use Portainer because we were all in on Docker Cloud, which gave 2 months notice that they were sunsetting their services. We knew we wanted to migrate to Docker Community Edition, but its lack of UI had us worried until we came across Portainer. Portainer had just release their agent feature, which was a critical feature for us. To date, Portainer has been an outstanding product and we couldn't be happier with it.
I use Portainer as a way to disseminate micro-service architectures in my institute and drive innovation forward. Portainer enables an easy to deploy, easy to build platform which decreases the learning curve for deploying containers and micro-services. I am particular interested in offering Portainer as a product in the Research space (i work in one of the bigguest Australian Universities).
I use Portainer because it's a great tool to avoid CLI in docker environment, all management in only one screen, awesome. So we can use our time in more important stuff like providing more and better services to our teams and endusers. The Builtin LDAP support and the internal teams helps a lot in diving Dev's in the Devops world. Long live to Portainer. (I work as DevOps in a Big Brazilian Public University )
Heroku was a decent choice to start a business, but at some point our platform was too big, too complex & too heterogenic, so Heroku started to be a constraint, not a benefit. First, we've started containerizing our apps with Docker to eliminate "works in my machine" syndrome & uniformize the environment setup. The first orchestration was composed with Docker Compose , but at some point it made sense to move it to Kubernetes. Fortunately, we've made a very good technical decision when starting our work with containers - all the container configuration & provisions HAD (since the beginning) to be done in code (Infrastructure as Code) - we've used Terraform & Ansible for that (correspondingly). This general trend of containerisation was accompanied by another, parallel & equally big project: migrating environments from Heroku to AWS: using Amazon EC2 , Amazon EKS, Amazon S3 & Amazon RDS.
We recently moved our main applications from Heroku to Kubernetes . The 3 main driving factors behind the switch were scalability (database size limits), security (the inability to set up PostgreSQL instances in private networks), and costs (GCP is cheaper for raw computing resources).
We prefer using managed services, so we are using Google Kubernetes Engine with Google Cloud SQL for PostgreSQL for our PostgreSQL databases and Google Cloud Memorystore for Redis . For our CI/CD pipeline, we are using CircleCI and Google Cloud Build to deploy applications managed with Helm . The new infrastructure is managed with Terraform .
Read the blog post to go more in depth.