generator-express-sidecar

1.1.0 • Public • Published

generator-express-sidecar Build Status npm version Dependency Status devDependency Status

Yeoman Express generator with additional Spring Cloud Sidecar setup

The Spring Cloud Sidecar works in two ways it allows your Node application to be discovered by other applications through Eureka or Consul, perform health checks etc. On other hand it let you access from inside the Node application Eureka for service discovery and address lookup or for instance read the Cloud Config server for configuration.

Getting Started

To install generator from npm, run:

npm install -g generator-express-sidecar

Finally, initiate the generator:

yo express-sidecar

Options

Application name

The name of the application to be registered in the discovery service.

Discovery service

The discovery service to use, either Netflix Eureka or Consul.

Eureka serviceUrl

Allows to specify the serviceUrl to Eureka

Consul host

The Consul host.

Consul port

The Consul port.

Project structure

.
├── app
│   ├── app.js
│   ├── bin
│   ├── package.json
│   ├── public
│   ├── routes
│   └── views
└── sidecar
    ├── build.gradle
    ├── gradle
    ├── gradlew
    ├── gradlew.bat
    └── src

The app directory contains normal Express application, there is nothing special about it. The sidecar has a Spring Cloud Sidecar setup.

Running

You will need a running Spring Cloud Eureka instance to able to run this application.

First start the Express application:

cd app
 
$ DEBUG=app:* bin/www
 

Next run Spring Cloud Sidecar

cd sidecar
 
$ ./gradlew bootRun
 

You should see the application being registered in Eureka:

Eureka registration

You can access the sidecar application on http://localhost:5678

Sidecar

The application itself runs on http://localhost:3000 and this is the address that will be registered within Eureka.

Configuration

The application.yml sets the home address to be accessed by other applications and the health url:

server:
  port: ${PORT:5678}
 
spring:
  application:
      name: express-sidecar
 
sidecar:
  port: 3000
  home-page-uri: http://localhost:${sidecar.port}/
  health-uri: http://localhost:${sidecar.port}/health
 

License

MIT

Readme

Keywords

Package Sidebar

Install

npm i generator-express-sidecar

Weekly Downloads

0

Version

1.1.0

License

MIT

Last publish

Collaborators

  • jmnarloch