Skip to main content

Python interface for Minikube

Project description

KubiPy - macOS Python manager for Minikube

Version License Status macOS

KubiPy helps you to manage Minikube clusters on macOS, all without leaving Python. It provides an interface to Minikube and allows you to setup and manage a cluster. This is immensively helpful to enable local testing of Python applications, before shipping them to a fully-fledged Kubernetes Cluster. This way, you generate a local Kubernetes test environment in a matter of minutes.

The KubiPy interface allows you to not only install Minikube and all components, but also coordinates and sporns all components.

Usage

KubiPy is available on PyPi as kubipy. So you can run your regular pip command.

pip install kubipy

KubiPy provides the minipy() class. Once initiated this class is the core of all your operations. While running these commands you will need your sudo password, so keep it close by.

# initiate the class 
cluster = minipy()

# install minikube
cluster.install()

# start the cluster
cluster.start()

# deploy an API
cluster.deploy(script_file = "api.py",
               requirements_file = "requirements.txt",
               port = "8000",
               deployment_name = "my-deployment")

# open the dashboard
cluster.dashboard()

# stop the cluster
cluster.stop()

# delete minikube
cluster.delete()

Dependencies

Minikube depends on numerous components to run. The provision and configuration of these components is handled by KubiPy. However, you should be aware of what happens.

  1. KubiPy needs a container technology to containerize scripts. To do so, KubiPy installs Docker.
  2. KubiPy installs a driver that is needed to host a Kubernetes cluster on your machine. KubiPy uses VirtualBox to do so.
  3. KubiPy relies on the Kubernetes-CLI kubectl. This is installed using the package manager Homebrew for macOS.
  4. KubiPy of course relies on Minikube. This is installed via Homebrew as well.

Stage of Development

KubiPy is under active development and supports currently only macOS. At the moment KubiPy provides the necessary functionalities to setup, start and shut down Minikube on your local machine. The functions include:

  • install()
  • start()
  • stop()
  • dashboard()
  • status()
  • deploy()
  • get_pods()
  • get_services()
  • get_deployments()
  • delete_object()
  • delete()

Next Steps

Version 1.0

  • Minikube project management
  • Minikube service management
  • Docker image creation
  • Docker image pushing
  • API deployment to minikube

Version 2.0

  • Linux Support: CentOS, Ubuntu, Debian

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kubipy-0.1.9.5.tar.gz (11.0 kB view hashes)

Uploaded Source

Built Distribution

kubipy-0.1.9.5-py3-none-any.whl (10.8 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page