Practical k8s: Pods

A Pod would be the smallest deployable unit one can create and manage inside Kubernetes(K8s). In practice, rarely you create a Pod directly. Instead, one would create a Deployment, a StatefulSet, a DaemonSet, a Job, or a CronJob. These are higher-level constructs that would create Pods for you. Here I’m covering common tasks that one would do with a Pod in daily work, like getting logs, opening a shell inside a container, debugging a Pod, etc. ...

October 24, 2022 · 6 min · Robert Nemet

Docker-Compose: How To Rebuild Working Application

While developing application and using docker-compose one question quickly arise: How to properly rebuild application? Once an image is built new one will not be built with the same tag as long it exists in a local cache. The compose builds an image it names it with the pattern <context>_<service_name>:latest. Where: Context is directory name where compose YAML is Service is service name in compose YAML file This means that you can stop or takedown the compose application, next time you run it your images will not be rebuilt if they already exist. Anyway, we aim to rebuild/restart only parts of the system that are changed. Once the compose application is running, we only rebuild the service we are working on. ...

February 2, 2022 · 2 min · Robert Nemet

Docker-Compose: What Every Developer Needs To Know

If you are developing microservices, docker-compose(compose), can be a very powerful tool. Think of a case with an API service and database. Creating and maintaining a database with the use of the Liquibase. Initial plan …would be: start DB run the Liquibase to make changes start an app Adding docker-compose as a driver to utilize this process: sequenceDiagram autonumber Docker -->> PostgresDB: start PostgresDB -->> PostgresDB: wait to finish start PostgresDB -->> Docker: done Docker -->> LiquibasePG: start LiquibasePGDB -->> PostgresDB: execute changeLog LiquibasePGDB -->> Docker: done Docker -->> Echo: start PostgresDB Setup This is the simplest step. According to the docs, this would be enough: ...

January 26, 2022 · 3 min · Robert Nemet

Docker-Compose: Intro

Working with containers is a necessity today for developers. You will likely need to work with some kind of storage or interact with some external service, like Solr or Postgres. You can install the required service on your local machine, which comes with the burden of choosing the correct installation, configuration, etc… Nothing too complicated but takes time. Docker and Containers In short, the container is an isolated process on the host machine. It runs in the isolated file system, a container image. Docker would be a platform, a set of tools, for building, running, sharing applications packed in the container image. ...

January 8, 2022 · 3 min · Robert Nemet

Kubernetes: Exposing Services and Horizontal Pod Autoscaler

This post is the third part of the series about Kubernetes for beginners. In the second part, I introduced the K8s and its basic components. In the second part, I discussed containers, pods, and deployments. This post will discuss services(SVC) and horizontal pod autoscaler(HPA). In this short post, I will discuss how to expose your services to the outside world and scale your applications based on the load. Exposing Deployments: Services When you create a Deployment, you’ll get Pods running your app. So, start local K8s cluster and deploy an app: ...

February 6, 2025 · 8 min · Robert Nemet