Contents
Roadmap info from roadmap website
PaaS Options for Deploying Containers
Platform as a Service (PaaS) is a cloud computing model that simplifies the deployment and management of containers. It abstracts away the underlying infrastructure allowing developers to focus on creating and running their applications. Given below are some of the popular PaaS options for deploying containers:
Amazon Elastic Container Service
Amazon Elastic Container Service is a fully managed container orchestration service offered by Amazon Web Services. It allows you to run containers without having to manage servers or clusters. It integrates with other AWS services such as IAM, CloudWatch, and CloudFormation.
- Supports Docker containers and Amazon ECR
- Offers a free tier for new users
- Supports multiple deployment options
- Pay for what you use, with no upfront costs
Google Cloud Run
Google Cloud Run is a fully-managed compute platform by Google that allows you to run stateless containers. It is designed for running applications that can scale automatically, enabling you to pay only for the resources you actually use.
- Automatically scales based on demand
- Supports custom domains and TLS certificates
- Integrates with other Google Cloud services
- Offers a generous free tier
AWS Elastic Beanstalk
AWS Elastic Beanstalk is an orchestration service offered by Amazon Web Services that allows you to deploy, manage, and scale applications using containers, without worrying about the underlying infrastructure.
- Supports multiple languages and platforms, including Docker containers
- Integration with other AWS services, such as RDS, S3, and CloudFront
- Offers monitoring and logging capabilities
- Pay for what you use, with no upfront costs
Microsoft Azure Container Instances
Azure Container Instances is a service offered by Microsoft Azure that simplifies the deployment of containers using a serverless model. You can run containers without managing the underlying hosting infrastructure or container orchestration.
- Fast and simple deployment process
- Customizable size, network, and storage configurations
- Integration with Azure services and Azure Kubernetes Service
- Pay-per-second billing model
Containers apps
HTTP probes
Case Web server with Terraform:
{
...
"containers":[
{
"image":"nginx",
"name":"web",
"probes": [
{
"type": "liveness",
"httpGet": {
"path": "/health",
"port": 8080,
"httpHeaders": [
{
"name": "Custom-Header",
"value": "liveness probe"
}]
},
"initialDelaySeconds": 7,
"periodSeconds": 3
},
{
"type": "readiness",
"tcpSocket": {
"port": 8081
},
"initialDelaySeconds": 10,
"periodSeconds": 3
},
{
"type": "startup",
"httpGet": {
"path": "/startup",
"port": 8080,
"httpHeaders": [
{
"name": "Custom-Header",
"value": "startup probe"
}]
},
"initialDelaySeconds": 3,
"periodSeconds": 3
}]
}]
...
}
IBM Cloud Code Engine
IBM Cloud Code Engine is a fully managed, serverless platform by IBM that runs your containerized applications and source code. It supports deploying, running, and auto-scaling applications on Kubernetes.
- Built on top of Kubernetes and Knative
- Deploy from your container registry or source code repository
- Supports event-driven and batch workloads
- Pay-as-you-go model
When choosing a PaaS option for deploying containers, consider factors such as integration with existing tools, ease of use, costs, scalability, and support for the programming languages and frameworks your team is familiar with. Regardless of your choice, PaaS options make it easy for developers to deploy applications without worrying about managing and maintaining the underlying infrastructure.