Skip to content

ccleouf66/rkd

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

rkd

Rancher Kubernetes Downloader, tool to list and download Rancher release for Air Gapped Environment.

To do

  • download rke binary to complet package
  • add go minio client to upload datapack
  • improve .devcontainer docker image with go extension

List Rancher version

To list the latests version of Rancher:

# List rancher version 
$ ./rkd list
Num. Name - TagName
0. Release v2.4.8 - v2.4.8
1.  - v2.4.7
2. v2.4.6 - v2.4.6
3. Release v2.3.9 - v2.3.9
4. Release v2.4.5 - v2.4.5

Download latest package

To download the package in order install a Rancher on Air Gapped environment (helm chart + images):

# download latest chart & images of rancher
./rkd download
# download only busybox and alpine images
./rkd download --image busybox --image alpine
# download rancher v2.5.0 and alpine image
./rkd d --rancher v2.4.8 --image alpine
# download only busybox and alpine images in the specified directory
./rkd download --image busybox --image alpine --dest myDirectory

Auth

rkd uses Docker credential helpers to pull images from a registry.

Get your docker registry user and password encoded in base64

echo -n USER:PASSWORD | base64

Create a config.json file with your Docker registry url and the previous generated base64 string

{
	"auths": {
		"https://index.docker.io/v1/": {
			"auth": "xxxxxxxxxxxxxxx"
		}
	}
}

Run rkd with the config.json inside your home dir.

~/.docker/config.json

Building dependencies

It should work in more environments (e.g. for native macOS builds) It does not require root privileges (after dependencies are installed) Install the necessary dependencies:

# Fedora:
$ sudo dnf install gpgme-devel libassuan-devel btrfs-progs-devel device-mapper-devel
# Ubuntu (`libbtrfs-dev` requires Ubuntu 18.10 and above):
$ sudo apt install libgpgme-dev libassuan-dev libbtrfs-dev libdevmapper-dev
# macOS:
$ brew install gpgme