Giter Site home page Giter Site logo

liberty-microservice's Introduction

Cloud-native Toolkit

This template can be used as a starter kit for the Cloud-native toolkit

Create and deploy a Java - MicroProfile / Jakarta EE application

We have applications available for Node.js Express, Go Gin, Python Flask, Python Django, Java Spring, Java Liberty, Swift Kitura, Android, and iOS.

In this sample application, you will create a Java cloud-native application using Liberty. This provides a starting point for creating Java web applications running on Open Liberty. It contains no default application code, but comes with standard best practices, including a health check.

This application exposes the following endpoints:

  • Health endpoint: <host>:<port>/health
  • Web content: <host>:<port>/<contextRoot>
  • Web Application: <host>:<port>/v1/example
  • Swagger UI: <host>:<port>/openapi/ui
  • Openapi Document: <host>:<port>/openapi

The web application has a health endpoint which is accessible at <host>:<port>/health. The ports are set in the pom.xml file.

Steps

You can deploy this application to IBM Cloud or build it locally by cloning this repo first. Once your app is live, you can access the /health endpoint to build out your cloud native application.

Deploying

After you have created a new git repo from this git template, remember to rename the project. Edit the pom.xml and change the artifactId from the default name to the name you used to create the template.

Make sure you are logged into IBM Cloud using the IBM Cloud CLI and have access to your development cluster. If you are using OpenShift make sure you have logged into the OpenShift CLI on the command line.

Install the IBM Garage for Cloud CLI.

curl -sfL get.cloudnativetoolkit.dev | sh -

Use the IBM Garage for Cloud CLI to create the dev namespace

igc namespace dev --dev

Use the IBM Garage for Cloud CLI to register the GIT Repo

igc pipeline -n dev --tekton --pipeline ibm-appmod-liberty

See the Deploy an app guide under Day 1 - Build and deploy in the IBM Cloud-Native toolkit for details.

Building Locally

To get started building this application locally, you can either run the application natively or use the IBM Cloud Developer Tools for containerization and easy deployment to IBM Cloud.

Native Application Development

To build and run the application:

  1. mvn liberty:dev
  2. Press enter once the server is running to run integration tests.

To run an application in Docker use the Docker file called Dockerfile. If you do not want to install Maven locally you can use Dockerfile-tools to build a container with Maven installed.

You can verify the state of your locally running application using the Selenium UI test script included in the scripts directory.

More Details

For more details on how to use this Starter Kit Template please review the IBM Garage for Cloud Cloud-Native Toolkit Guide

Next Steps

License

This sample application is licensed under the Apache License, Version 2. Separate third-party code objects invoked within this code pattern are licensed by their respective providers pursuant to their own separate licenses. Contributions are subject to the Developer Certificate of Origin, Version 1.1 and the Apache License, Version 2.

Apache License FAQ

LIBERTY-MICROSERVICE

liberty-microservice's People

Contributors

sirisha-amilineni avatar

Watchers

 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.