In this post, I will be introducing three strategies that can help Node developers who wish to loosen their code. First, we’ll cover microservices with Moleculer. Then, we’ll through Inversion of Control with InversifyJS. Finally, we’ll discuss N-Tier Architecture and why it’s helpful.
GitOps provides a declarative approach for improving the management of application delivery.
In this 50-minute video, Keyhole Principal Consultant Jaime Niswonger discusses basic GitOps fundamentals and various implementations in a Kubernetes environment. He covers GitOps best practices that unify deployment, management, and monitoring for containerized clusters and applications. Then he introduces ArgoCD and shows its capabilities in an OpenShift/Kubernetes environment. Jaime includes his own experiences and what he has seen working with companies across various industries.
This is a tutorial for how to use the VS Code Remote-Containers extension to containerize your development environment. First, I will discuss my reasons for separating my programming environment and why virtual machines didn’t work. Then, I’ll show a simple example using a containerized Python development environment. Finally, I’ll give you my reasons why containerizing the development environment fits what I’m looking for in a solution.
So you want to host a web application on Azure with minimal overhead, but how is this done? Azure makes it possible by running an App Service using Docker containers. Setting up an App Service is simple and can be accomplished with a few steps.
In this blog, I’ll explain the steps necessary to generate a Docker image in Azure. Then, we will deploy a web application based on an image we generate. We host the application with the following steps:
1. Create a Container Registry
2. Build a Docker image
3. Create a Web App
When the Microservices approach became popular a few years ago, many companies rushed to build their own microservices or to convert their legacy applications into microservices. Over the years, companies have implemented an abundance of microservices, mostly with Spring Boot. Each of them manage their own configurations across deployment environments like Dev, Test, and Prod.
Due to the nature of a complex business process, there are many common configurations (e.g. databases, queues, email servers, and FTP servers, etc.) used in the distributed services. This can result in services having redundant and confusing configs on a distributed system. It can become challenging to update the configs for too many services on a distributed system across multiple environments.
Thankfully, Spring Cloud Config provides the implementation to successfully resolve these issues. It provides server-side and client-side support for externalized configuration in a distributed system. With the Config Server, you have a central place to manage external properties for applications across all environments. The concepts on both client and server map identically to the Spring Environment and PropertySource abstractions, so they fit very well with Spring applications.
In this post, I’ll demonstrate Config Server and Client with example code. I’ll show you how to use Git or a local repository as a central place to store all the config files. The diagram below illustrates how the distributed client services (e.g. Investment Position/Price/Reporting Data service) fetch their configuration from the Config Server, which in turn retrieves them from one central place.