The purpose of this repository is to present capabilities of Berlioz - the microservices applications deployment and orchestration service for AWS.
The repo is structured in chapters, starting with trivial samples to more complex applications.
First, install berlioz command line toolkit.
$ npm install berlioz -g
- Navigate to sample directory
$ cd 01.HelloWorld.js/v1.basic
- Some examples are using AWS native resources like DynamoDB and Kinesis. In order to run the samples locally you should provide the name of AWS profile to use to provision thouse native resources:
$ berlioz local account --profile <the-name-of-aws-profile-to-use>
- Build and deploy the project
$ berlioz local build-run
- Output service endpoint addresses
$ berlioz local endpoints
- Open the endpoint in the browser: http://localhost:40000 (use the port returned from the step 3).
- Sign-up and login to AWS.
- Create AWS access key. For details see the guide here.
- Sign-up to Berlioz:
$ berlioz signup
- Link AWS account to Berlioz:
$ berlioz provider create --name myaws --kind aws --key <key> --secret <secret>
- Create deployments for production and test:
$ berlioz deployment create --name prod --provider myaws
$ berlioz deployment create --name test --provider myaws
- Navigate to sample directory
$ cd 01.HelloWorld.js/v1.basic
- Login the region in order to push images
$ berlioz login
- Build and push the project to berlioz
$ berlioz push --region us-east-1
- Deploy the project to the test deployment
$ berlioz run --deployment test --cluster hello --region us-east-1
- Output service endpoint addresses
$ berlioz endpoints --deployment test --region us-east-1
- Open the endpoint in the browser: http://1.2.3.4:12345 (use the address and port returned from the step 4).
The berlioz comes with graphical diagram generation tool. To generate a diagram simply:
$ cd 02.DynamoDB
$ berlioz output-diagram
Will generate a diagram like this:
or for a more complex project:
$ cd 02.Pharmacy
$ berlioz output-diagram