Book Image

Full Stack Development with JHipster

By : Deepu K Sasidharan, Sendil Kumar Nellaiyapen
Book Image

Full Stack Development with JHipster

By: Deepu K Sasidharan, Sendil Kumar Nellaiyapen

Overview of this book

JHipster is a development platform to generate, develop, and deploy Spring Boot and Angular/React applications and Spring microservices. It provides you with a variety of tools that will help you quickly build modern web applications. This book will be your guide to building full stack applications with Spring and Angular using the JHipster tool set. You will begin by understanding what JHipster is and the various tools and technologies associated with it. You will learn the essentials of a full stack developer before getting hands-on and building a monolithic web application with JHipster. From here you will learn the JHipster Domain Language with entity modeling and entity creation using JDL and JDL studio. Moving on, you will be introduced to client side technologies such as Angular and Bootstrap and will delve into technologies such as Spring Security, Spring MVC, and Spring Data. You will learn to build and package apps for production with various deployment options such as Heroku and more. During the course of the book, you will be introduced to microservice server-side technologies and how to break your monolithic application with a database of your choice. Next, the book takes you through cloud deployment with microservices on Docker and Kubernetes. Going forward, you will learn to build your client side with React and master JHipster best practices. By the end of the book, you will be able to leverage the power of the best tools available to build modern web applications.
Table of Contents (23 chapters)
Title Page
Copyright and Credits
Dedication
Packt Upsell
Foreword
Contributors
Preface
Index

Packaging the application for local deployment


Now let's build our application and deploy it locally. This can be done in two ways, either using Docker or by building and executing a WAR file.

Building and deploying using Docker

Let's use a Gradle task to build our docker image.

Note

Use the ./gradlew tasks command to list all available tasks.

  1. In your Terminal, go to the project root folder and execute; ./gradlew bootRepackage -Pprod buildDocker:
    • bootRepackage: Builds an executable archive (WAR) file for the application
    • -Pprod: Specifies the profile to use
    • buildDocker: Builds a docker image based on the Dockerfile present in the src/main/dockerfolder

Note

If you are using JHipster Version 5 or above, usebootWarinstead of thebootRepackagecommand in Gradle.

2. Once the task is completed successfully, we can deploy our app by running:

> docker-compose -f src/main/docker/app.yml up

This will also start the MySQL DB if you haven't started it already. If you already have it running from the previous step...