Photo by Footluz Blog on Unsplash

Microsoft Azure provides Azure Bastion service which is a jump server so you can securely access your virtual machines via its Azure Portal web interface without exposing SSH or RDP port. Here is its architecture:

Not all the domain name are supported by Let’s Encrypt ACME

Photo by Markus Winkler from Unsplash

In my previous blog about setting up Kubernetes with MicroK8s and Traefik, I used DDNS service from to create a domain name for testing with whoami application which was working without any problem.

But when I tried to switch to my other domain which is a DDNS service from my internet provider, the certificate cannot be issues with the error query timed out looking up CAA.

This blog is to get to know more about ACME and CAA.


To host a website or web application securely, you…

MicroK8s: High availability, Low-ops, Minimal Kubernetes for All-Size Clusters

Photo by Humphrey Muleba from Unsplash

In my recent blog, I have setup a single-node Kubernetes cluster on my home lab server using k0s. It is a good tool that make it easy to setup a cluster in just one or two commands. However, as it may be relatively new, I found a problem when starting the cluster that worker node sometime isn’t up and running and you need to restart the service.


In this blog, I will try another tool called MicroK8s which is around for sometime and hopefully will be more stable than k0s to…

Reducing your cloud bill and make use of your PC at home

Photo by Erin Doering from Unsplash

I have been running a small Kubernetes (k8s) cluster on a cloud provider for some time and finding alternative to reduce my bill. I could have run my small workloads on a small server that cost only $5 a month like I did for in this blog but I prefer a k8s cluster as all my existing configurations and scripts are built for it and I can keep learning and catch-up this popular ecosystem.

Recently, I have read this blog by Luc Juggery which show how easy you…

Your Own Server, Your Own Privacy, Multiple Users

Image by Stefan Coders from Pixabay

I have recently stumbled upon a video on YouTube by Wolfgang’s Channel about how to setup your own VPN server using OpenVPN. There’s also a transcript version of the video that you can read and follow along. Or you can follow my guide below.


In this guide, I will show you how to setup OpenVPN server on a Linux VM hosted on Linode. The cost of the VM is $5 per month (1TB traffic inclusive) but you can get free $100 credit for 60 days from this link. …

Docker is not the only tool to work with containers

Docker vs. Podman+Buidah+Skopeo
Docker vs. Podman+Buidah+Skopeo
Docker vs. Podman+Buidah+Skopeo —Image by Chairat Onyaem (Par)

We often use Docker when we talk about containers, similar to we use ‘Coke’ when we talk about carbonated soft drink. We all know that Coke is not the only brand that sells carbonated soft drink. Same to Docker, it is not the only one that does containers.

Why not Docker

Docker has been around for quite a while and it is a good tool. It is one of the very first thing I always tell junior developers to study when they start their first job from school.

Recenly, I feel annoying installing…

A man standing on top of a mountain — Le Ngoc Tan

Updated Jan 2019: Azure Container Service (ACS) has been replaced by Azure Kubernetes Service (AKS). Please refer to this guide on how to easily create an AKS cluster.

Table of Contents

1. Create Application ID

1) Go to Azure Active DirectoryApp registrations and click New application registration


SSH is the way to connect and command your Linux machine. Doing this from Windows is even more painful as you need a client like Putty installed (Or enable built-in SSH if you’re using Windows 10).

What if you can do it right from your web browser from any OS without installing anything!?!

What is Wetty?

Wetty = Web + tty.

Terminal over HTTP and HTTPS. Wetty uses ChromeOS’ terminal emulator (hterm) which is a full fledged implementation of terminal emulation written entirely in Javascript. Also it uses websockets instead of Ajax and hence better response time.



  • Ubuntu Server with Docker…

In my last blog, I’ve explained about deployment pipeline I built for Continuous Integration and Continuous Delivery in ABAP. Another thing that our team has built was the application monitoring.

For our Java Spring Boot services, it can seamlessly integrate Prometheus module in the POM file and then your application is ready to be monitored with built-in metrics.

I managed to create Prometheus client for ABAP. I will explain how you can setup one for yours below.

What is Prometheus?

In my recent project, we are building Java miniservices that connect to SAP backend via RESTful APIs. The team has setup a CI/CD pipeline in Jenkins to automate build, test, and deploy of those Java services. At the time we had the pipeline, I have realized the benefits for having such pipeline and that became my motivation to build one for ABAP.

The most important benefit in my view is the visibility over your software’s health. If someone asks whether the Java piece is working fine at the moment, we can have a glance at Jenkins monitor and be able…

Chairat Onyaem (Par)

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store