Giter VIP home page Giter VIP logo

spring-starter-skaffold-dekorate's Introduction

Spring Starter Project with Skaffold + Dekorate

This is a boilerplate template for building / deploying a Spring microservice on Kubernetes using Skaffold + Dekorate.

Versioning

GitHub Release JDK Version Spring Boot Version Spring Cloud Version Skaffold Version Dekorate Version Jib Version
master 15 2.3.4.RELEASE Hoxton.RELEASE 1 0.13.2 2.6.0

Project Structure

├── README.md
├── manifests
├── mvnw
├── mvnw.cmd
├── pom.xml
├── skaffold.yaml
├── src
│   ├── main
│   │   ├── java
│   │   │   └── guru
│   │   └── resources
│   │       ├── application-kubernetes.yaml
│   │       ├── bootstrap.yaml
│   │       ├── static
│   │       └── templates
│   └── test
│       └── java
│           └── guru
└── target
  • manifests folder will contain Kubernetes manifests generated by Dekorate
  • skaffold.yml is the Kubernetes pipeline
  • src/main/java folder will contain Spring Java classes
  • src/main/resources folder will contain Spring bootstrap (bootstrap.yaml) config and Dekorate config (application-kubernetes.yaml)
  • target folder will contain Spring JAR file

Setting Up

To setup this project, you need to clone the git repo

$ git clone https://github.com/kubeopsskills/spring-starter-skaffold-dekorate.git
$ cd spring-starter-skaffold-dekorate

followed by

$ mvn clean install

Deploying a Spring microservice

Preparing RBAC for Spring microservice

$ git clone https://github.com/kubeopsskills/spring-starter-skaffold-dekorate-config.git
$ cd spring-starter-skaffold-dekorate-config

followed by

$ kubectl apply -f rbac

Preparing Config Map for Spring microservice

$ kubectl apply -k config

To enable Continuous Development (Develop + Integrate Source Code From IDE) on Kubernetes, run following command:

$ skaffold dev -p dev -n [namespace]

This will build the project source code to Docker image and then deploying it on Kubernetes with forwarding logs from Kubernetes to your IDE!

spring-starter-skaffold-dekorate's People

Contributors

dmakeroam avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.