Awesome NomadDemo and Learning Resources

thangchung/coffeeshop-on-nomad

⭐ 116 C# repository created 2022-08-02

The project "coffeeshop-on-nomad" is a .NET-based coffeeshop application designed to run on HashiCorp Nomad and Consul Connect, leveraging Docker containers for deployment. It consists of multiple microservices including product-service, counter-service, barista-service, kitchen-service, and additional components like a reverse proxy, SignalR web, and a data generation app for local development. The application architecture is built to demonstrate service orchestration and connectivity using Nomad for workload scheduling and Consul Connect for service mesh capabilities. The project provides a comprehensive setup guide for developers, including instructions for running the application within a VSCode devcontainer environment. It details the steps to build Docker images, configure necessary Linux kernel modules for Nomad compatibility (especially on WSL2), and start essential services such as Nomad, Consul, Traefik (for routing), RabbitMQ, and PostgreSQL. The Nomad jobs for each microservice are defined in HCL files, which can be run or stopped via Nomad CLI commands. The application exposes various service endpoints locally, allowing developers to interact with each microservice through HTTP. It also includes dashboards for Nomad, Consul, Traefik, and RabbitMQ to monitor and manage the system. Troubleshooting tips are provided, such as adjusting virtual memory settings to run ELK stack containers on Windows with WSL2. Overall, this project serves as a practical example of deploying a microservices application on Nomad with integrated service discovery and secure service-to-service communication via Consul Connect. It is useful for developers looking to learn or demonstrate modern cloud-native deployment patterns using HashiCorp tools.

https://github.com/thangchung/coffeeshop-on-nomad

.netconsulconsul-connectdevcontainerdockerdotnetelk-stackhashicorp-nomadhcljob-schedulingmasstransitmicroservicesnomadopentelemetrypostgresqlrabbitmqservice-meshservice-orchestrationtraefikwsl2

Also in Demo and Learning Resources

thangchung/go-coffeeshop

go-coffeeshop is an event-driven microservices demo application built with Golang, deployed using HashiCorp Nomad, Consul Connect, Vault, and Terraform, demonstrating modern microservices architecture and deployment practices.

star3am/hashiqube

HashiQube is an all-in-one hands-on DevOps lab that runs all HashiCorp products including Nomad, providing a versatile environment for learning, practicing, and demonstrating infrastructure and security tools in cloud or local setups.

fhemberger/nomad-demo

A Vagrant-based demo environment for running and exploring HashiCorp Nomad, Consul, and Vault with integrated service discovery, workload orchestration, and monitoring tools.

nairnavin/practical-nomad-consul

A practical tutorial and guide for deploying a realistic multi-tier Spring Boot Petclinic application using HashiCorp Nomad and Consul with service mesh, ingress and terminating gateways, load balancing, and secure communication.