How would you like your container served?
2 October 2022 · Filed in Platform InfrastructureContainers and Docker images offer fast testing and deployment. They need deploying to be useful.
Your application is running in a container. How does your customer and users get to use it. You need as a minimum, two things.
- Routing Layer
- Hosting Layer
For the routing layer, this could be as simple as a DNS Entry pointing to a load balancer, or something more elaborate like a Nginx ingress gateway.
The Hosting layer has an even longer list of options. If you are working locally, you can tell your container to run
on your local machine with Docker
, podman
, docker-compose
or some custom tool to start and monitor the containers.
If you only have one server to host your container, then that list is enough. For production though, you are going to want a cluster of machines hosting many replicas of your container application.
There are many container orchestration tools to choose from
- Mesosphere
- Nomad
- OpenShift
- Cloud Foundry
- Elastic Container Service
- Write your own
These tools simplify the running and monitoring of container instances. They are responsible for finding a place to run the container, and ensure that it keeps running until it’s time to get replaced with a new version, or decommissioned.
Each of the tools above will interface with a database (of sorts) to tell the Routing layer where it can send traffic.
Mesosphere uses zookeeper or etcd, Nomad uses Consul, and Elastic Container Service uses Route 53.
The alternative is to use a cloud in a box product. Here I am talking about OpenStack. Ha Kidding. You could use that but Kubernetes can do that all and make a better job of it.
Of course not everyone wants or needs to run a cloud in a box, and the tools mentioned above all have ecosystems of tools to make up that cloud solution.
Want to know more? Come ask me questions. You can find me on Slack.
If you found this useful, subscribe to updates and look out for my YouTube channel content.
Previous Post: What is Ansible and how does it work? Next Post: Google announces closure of Stadia Tags: containers · devops · docker · servers