Container machines are persistent Linux environments built from OCI images — your home directory is mounted in, the user account matches your host account, and the filesystem survives stop and start. ref I like the idea to isolate development stuff from my host machine, all those tools and libraries to fight with, lives in the isolated environment. The last WWDC26 announce Apple's native Container…
This post I wrote just by hand, english is not my native language and I've not use any LLM to fix or polish the text. I've a pet project the teleskopio . It's a kubernetes web UI to overview and manage cluster. I started developing my own dashboard a year ago; teleskopio was born after struggling to manage clusters with the terminal. One of the planned feature was an MCP server implementation.…
RAG stands for Retrieval-Augmented Generation. It's a way to make AI assistants smarter by giving them access to specific information when answering questions. I've a good library of articles about kubernetes. It's a huge knowledge base I've build for myself. It's hard to navigate on this library but every article has been carefully chosed. Recently I've found the wonderfull sources explaining how…
"UTM is an app for running other operating systems on your iPhone or iPad. It is not for running iOS on other systems. This allows you, among other things, to run Windows or Linux on your iOS device at a usable speed." – UTM Website In this article, I'll show you how to use UTM VMs virtual machines to create Linux development environments on Apple Silicon. This approach builds on the technique I…
KIND uses containerd by default as container runtime, however, it is possible to switch it by CRI-O. In this article, I'll demonstrate how to build node image with particular Kubernetes version and cri-o container runtime. Build Base Image # We need kind sources in order to build the base image : $ git clone git@github.com:kubernetes-sigs/kind.git $ cd kind/images/base $ make quick ./ .. / ..…
"Lima launches Linux virtual machines with automatic file sharing and port forwarding (similar to WSL2)." – Lima Website In this article, I'll demonstrate how to provision a Virtual Machine for software development that currently lacks support for Apple silicon. I'll be utilizing Lima VMs to establish development and testing environments specifically tailored for the cri-o project. Installation #…
"There is nothing so useless as doing efficiently that which should not be done at all." – Peter Drucker In this article, I'll briefly explain how to use the CUE configuration language and how it might help you to keep consistent the YAML / JSON files by validating against the schema, reducing repetition, and many more. Arguably, validation should be the foremost task of any configuration…
At this point, it's a simple, effective and fast RPC framework with a lot of cross-language support. If you need something like it, there's not many other choices available with this big of an ecosystem. - Anonymous from HN about gRPC In this article, I'll describe how to organize protobuf files messages and gRPC services in the Go sources. I'll briefly examine how to use protoc and plugins with…
“Always design a thing by considering it in its next larger context — a chair in a room, a room in a house, a house in an environment, an environment in a city plan” — Eliel Saarinen If your company, like mine, implements the microservice architecture, it is designed so that one microservice calls another. In case if one service experiencing failure all upstreams of that service receive the same…
“Tests are stories we tell the next generation of programmers on a project.” ― Roy Osherove Integration tests are the most effective way to test your application. The developers themselves usually write those tests. This tutorial aims to show you how easy and efficient it is to write integration tests with dockertest . Appication # First, let's describe the tools we'll use: gin - HTTP web…
Tauri is a polyglot and generic toolkit that is very composable and allows engineers to make a wide variety of applications. It is used for building applications for desktop computers using a combination of Rust tools and HTML rendered in a Webview. Sounds interesting and I decided to give it a try, and make a simple application for tracking cryptocurrency tickers from the Binance exchange. Setup…
With the version 1.16 we have a way to include in the binary an arbitrary files at compile time using embed standard package. Package embed provides access to files embedded in the running Go program. That feature is very useful in order to create a one-file web application. There are many libs provides that way, for example: pkger , go.rice go-bindata . In this post, I'll describe how to do it…