kubectl-push

module
v0.0.0-...-c38a2e0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 5, 2022 License: Apache-2.0

README

kubectl-image

Latest Docker Image golangci-lint Go Report Card

docker image but for kubernetes

(WIP)

Overview

Kubernetes (nearly) does not care about what images exist on the node, the only thing relates to "managing" image is image garbage collection.

I think it's not so convenient to cluster admin using another certain tools to management the images.

And another thing is I was always bothering with one problem: when I develop or debug chaos mesh, I need deliver the latest modified image to the target kubernetes cluster. If the kubernetes runs on minikube or kind with single node, I could use kind load docker-image, minikube image load, or build witheval minikube docker-env

Feature

  • List images on each Kubernetes Node
  • load image from local image
  • Deliver container images to kubernetes cluster simply, please do not use it in production env.

Roadmap

Out-of-date: This roadmap need updates.

  • build kubectl-push-peer that forwards HTTP request content to docker image load
  • play kubectl-push-peer with curl
  • build kubectl-push, automatically create Pod on Node, then send certain requests, in one command
  • terminal UI progress, silent mode
  • support kubernetes container runtime: docker
  • support local container runtime: docker
  • contributes to krew
  • reduce duplicated layers
  • support kubernetes container runtime: containerd
  • support local container runtime: containerd
  • support kubernetes container runtime: cri-o
  • support local container runtime: cri-o
  • p2p transmission

How it works

https://github.com/STRRL/kubectl-image/wiki/How-it-works%3F

Directories

Path Synopsis
cmd
kubectl-push command
pkg
cmd
Package cmd introduces all the commands.
Package cmd introduces all the commands.
container/runtime
Package runtime provides basic interfaces to interact with the different container runtimes.
Package runtime provides basic interfaces to interact with the different container runtimes.
peer
Package peer introduces the agent which would communicate with node's container runtime, and the client for it.
Package peer introduces the agent which would communicate with node's container runtime, and the client for it.
provisioner
Package provisioner provides the tools to setup the `kubectl-push-peer` on the target kubernetes cluster.
Package provisioner provides the tools to setup the `kubectl-push-peer` on the target kubernetes cluster.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL