A skeleton of a containerized microservice generated by Node Bootstrap
Please note: we follow the philosophy of clean separation between "build" and "run" stages.
In the build stage, the Dockerfile
is used to build the container image and
bring it to a state where it can be run by any execution environment (such as:
Swarm, Kubernetes, ECR, etc.) given that the environment will also contextualize
it using appropriate environmental variables.
In the run stage execution environment runs the container image built by the Dockerfile. For local development docker-compose.yml takes the role of the executor. it is the simplest solution for the task and we prefer keeping things simple, locally.
Please note that in the local environment code hot-reloading is turned on, so there is no need to restart the container as you develop code, just edit the corresponding files and enjoy the experience!
# run:
> make [start]
# run with arguments:
> make ARGS="irakli"
> make ARGS="-t 3 --period=morning irakli"
# stop:
> make stop
# clean rebuild:
> make clean
Inspecting health of the containers:
> docker-compose ps
> make logs
Installing a package:
npm run install-package <packagename>
Install a package in dev-dependencies:
npm run install-dev-package <packagename>
- Run:
make test