0.0.8 • Published 4 years ago

kubecraft v0.0.8

Weekly downloads
2
License
MIT
Repository
github
Last release
4 years ago

Kubecraft

Kubecraft is a Kubernetes deployment utility.

Prerequisits

  1. Docker Desktop
  2. kubectl
  3. Kompose
  4. Node and NPM
  5. Dockerfile / docker-compose.yaml files: your application must have either a Dockerfile (Docker) or a docker-compose.yaml (docker-compose).

Setup

  1. Add or update your .env file to include the following values:

    1. DOCKER_REGISTRY=[Your Docker Registry URL] (e.g. myregistry.azurecr.io)
    2. If you are not using a package.json file, add VERSION=[semver] (e.g, VERSION=0.0.1)
  2. Log in to your docker registry: docker login --username [Docker Registry user name] --pasword [Docker Registry password] [Docker Registry URL]

  3. Install kubecraft either locally or globally:

    Local installation:

    npm install -d kubecraft

    Add a script in package.json, for example:

    {
      "name": "my-service",      
      "license": "MIT",
      "version": "0.0.2",      
      "main": "src/start.js",
      "repository": "...",
      "scripts": {        
        "start": "babel-node ./src/start.dev.js",        
        "deploy": "kubecraft deploy"
      },

    Global installation

    npm install -g kubecraft

Run kubecraft

If you installed kubecraft globally, simply execute kubecraft [command] with one of the commands listed beloy in the root folder for your project (assuming that is where either the Dockerfile or the docker-compose.yaml file are located)

If you installed kubecraft locally, you should be able to either use an npm script, or you could run

export PATH=$PWD/bin:$PATH

to make the kubecraft command available in your terminal session.

Kubecraft commands

kubecraft [command]

  1. deploy - Deploy the your application to Kubernetes (combination of all the commands below)

  2. createDockerCompose: Create a basic docker-compose for you application (if one does not exist)

  3. buildAndPush: Build your Docker image and push it to the Docker regsitry
  4. prep - Prepare your application for deployement (build, configure and convert docker-compose to a Kubernetes config)
  5. dockerComposeConfig: Produce a concrete docker-compose file, applying any enviornment variables defined in .env to the docker-compose.yaml file. Produces docker-compose-resolved.yaml
  6. komposeConvert - Convert docker-compose-resolved.yaml to a Kubernetes configuration. Produces kompose.yaml
  7. apply - Apply the kompose.yaml configuration to the currently active cluster.
  8. expose - Expose your application using a Load Balancer. When completed, provides the newly deployed service's IP address.
0.0.8

4 years ago

0.0.7

4 years ago

0.0.6

4 years ago

0.0.5

4 years ago

0.0.4

4 years ago

0.0.3

4 years ago

0.0.2

4 years ago

1.0.9

4 years ago

1.0.8

4 years ago

1.0.7

4 years ago

1.0.6

4 years ago

1.0.5

4 years ago

1.0.4

4 years ago

1.0.2

4 years ago

1.0.1

4 years ago

1.0.0

4 years ago