Open sebastian-sommerfeld-io opened 4 months ago
Minikube and Minishift are both tools designed to simplify the process of running container orchestration platforms locally for development and testing purposes. While they share some similarities, they are tailored for different platforms and use cases.
Local Development Environment:
Cross-Platform Support:
Virtualization:
CLI Tools:
Underlying Platform:
Installation and Setup:
Resource Requirements:
Use Case:
Add-ons and Integrations:
Use Minikube if:
Use Minishift if:
Both Minikube and Minishift provide the ability to interact with your clusters using common Kubernetes tools such as Helm, kubectl, and ArgoCD. However, there are some nuances:
Helm:
kubectl:
oc
CLI, which is a superset of kubectl with additional OpenShift-specific commands and features.ArgoCD:
Minikube:
minikube start
, minikube stop
, minikube status
, etc.Minishift:
minishift start
, minishift stop
, minishift status
, etc.oc new-app
, oc status
, oc project
, etc.Helm: Works with both Minikube and Minishift, but some charts may need adjustments for OpenShift.
kubectl: Native support for Minikube; works with Minishift, but the oc
CLI is preferred.
ArgoCD: Compatible with both, with potential configuration adjustments needed for OpenShift.
Unique to Minikube: minikube
CLI.
Unique to Minishift: minishift
CLI and oc
CLI.
Using these tools effectively depends on your development environment and the specific requirements of your applications. Minikube offers simplicity for standard Kubernetes applications, while Minishift provides the additional capabilities required for developing and testing OpenShift-specific applications.
You can install both Minikube and Minishift on the same machine at the same time. Since you do not need to run both simultaneously, you can shut down one while powering up the other. This allows you to switch between a local Kubernetes cluster and a local OpenShift cluster as needed.
Install Minikube:
minikube start
minikube stop
Install Minishift:
minishift start
minishift stop
To use Minikube:
minishift stop
minikube start
To use Minishift:
minikube stop
minishift start
By managing the start and stop of each tool, you can effectively use both Minikube and Minishift on the same machine without conflicts.
Minishift is no longer under active development. The project was officially deprecated in favor of CodeReady Containers (CRC), which provides a similar local OpenShift environment but with better performance and support for newer versions of OpenShift.
If you have been using Minishift and need to switch to CRC, here are the basic steps:
Download CRC:
Install CRC:
Start CRC:
crc setup
crc start
Stop CRC:
crc stop
Usage:
crc
command-line interface similar to Minishift.By transitioning to CRC, you will ensure you are using a tool that is actively supported and aligned with the latest OpenShift developments.
Issue
Todo
configs/components/homelab/src/main/docker-stacks-cli.sh
)minikube-cli
aliasadmin-chart/portainer
or similar)--admin-password-file /tmp/portainer_passwords
into the container (maybe with a config map or better a secret)helm
as part of theadmin-charts
Additional Todos
src/test/minikube
? Or is this a dedicated helm chart? Maybe placing outside if test dir is better because this feature is not used by a pipelineFollow Up Todo
Follow Up Poc