Skip to content

CESARBR/knot-cloud-bootstrap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

9ca4c6c · Jul 10, 2019

History

20 Commits
Nov 26, 2018
Nov 27, 2018
Jun 18, 2019
Nov 26, 2018
Nov 26, 2018
Jun 18, 2019
Nov 26, 2018
Jul 10, 2019
Nov 27, 2018
Feb 13, 2019
Nov 26, 2018
Feb 13, 2019
Jul 10, 2019
Jul 10, 2019

Repository files navigation

knot-cloud-bootstrap

KNoT Cloud bootstrap service. Provides an endpoint to perform first time use configuration.

Installation and usage

This service is part of the KNoT Cloud and requires the a subset of its service to work.

Configuration

Either create a configuration file in the config (./config/local.json is ignored by Git in this repository) or use environment variables to configure your installation. In case you are running the published Docker image, you'll need to stick with the environment variables.

The configuration parameters are the following (the environment variable name is in parenthesis):

  • server
    • port (PORT) Number Server port number. (Default: 80)
  • meshblu
    • protocol (MESHBLU_PROTOCOL) String Meshblu HTTP adapter protocol, either http or https (Default: http).
    • hostname (MESHBLU_HOSTNAME) String Meshblu HTTP adapter hostname.
    • port (MESHBLU_PORT) Number Meshblu HTTP adapter port.
  • logger
    • level (LOGGER_LEVEL) String Logger level, one of: error, warn, info, verbose, debug, silly. (Default: info)

Build and run (local)

First, install the dependencies:

npm install --production

Then:

npm run build
npm start

Build and run (local, development)

First, install the dependencies:

npm install

Then, start the server with auto-reload:

npm run start:watch

or, start the server in debug mode:

npm run start:debug

Build and run (Docker, development)

A development container is specified at Dockerfile-dev. To use it, execute the following steps:

  1. Build the image:

    docker build . -f Dockerfile-dev -t knot-cloud-bootstrap-dev
    
  2. Create a file containining the configuration as environment variables.

  3. Run the container:

    docker run --env-file bootstrap.env -p 4000:80 -v `pwd`:/usr/src/app -ti knot-cloud-bootstrap-dev
    

The first argument to -v must be the root of this repository, so if you are running from another folder, replace `pwd` with the corresponding path.

This will start the server with auto-reload.

Run (Docker)

Containers built from the master branch and the published tags in this repository are available on DockerHub.

  1. Create a file containining the configuration as environment variables.
  2. Run the container:
docker run --env-file bootstrap.env -p 4000:80 -ti cesarbr/knot-cloud-bootstrap

Verify

To verify if the service is running properly, execute:

curl http://<hostname>:<port>/healthcheck