Menu

Close
  • Home
  • About
  • Author
Subscribe
Blog Logo Menu
Jason Kulatunga's Picture

Jason Kulatunga

Devops & Infrastructure guy @Gusto (ex-Adobe). I write about, and play with, all sorts of new tech. All opinions are my own.

San Francisco, CA blog.thesparktree.com 65 posts
Page 1 of 3 Older Posts »

Go - Serverless Framework - Newrelic

Because I seem to be a glutton for punishment, I decided to build an API for my startup Fasten Health using Go + Serverless Framework +... »

Author image Jason Kulatunga Golang, Serverless, Newrelic 21 Jan 2024

Building Multi-Arch Docker Images via Github Actions

I recently found myself needing to generate a multi-arch Docker image for one of my projects - specifically an ARM64 compatible image. While its well known... »

Author image Jason Kulatunga Docker, Github, Arm 11 Jun 2022

Hatchet - Cut down spam in your Gmail Inbox

I got frustrated with the amount of daily spam in my Gmail “Promotions” tab – especially since it made searching for email basically impossible. While there... »

Author image Jason Kulatunga Gmail, Imap 17 Jan 2022

OpenLDAP using STARTTLS & LetsEncrypt

LDAP (Lightweight Directory Access Protocol) is an open and cross platform protocol used for directory services authentication. LDAP provides the communication language that applications use to... »

Author image Jason Kulatunga Ldap, Letsencrypt, Tls 13 Jun 2021

Running Cron in Docker

Running cron in a Docker container is incredibly difficult to do correctly. This is partially because cron was designed to run in an environment that looks... »

Author image Jason Kulatunga Docker, Cron 26 Apr 2021

Repairing Kubernetes PersistentVolumeClaim - CrashLoopBackOff Errors

Kubernetes is an exceptionally durable piece of software, it’s designed to handle failures and self-heal in most cases. However, even them most robust software can run... »

Author image Jason Kulatunga Kubernetes, Persistentvolumeclaim, Errors, Volumemount 28 Mar 2021

Git Mirror Anywhere using the Dumb Http Protocol

Lets talk about Git. If you’ve done any professional software development, you’ve probably heard about Git. Git is a free and open source distributed version control... »

Author image Jason Kulatunga Git, Github, Linux 08 Mar 2021

Customize the FlatCar Kernel - Part 3 - Easy Kernel Modules using Forklift

It’s been a while since I discussed building kernel modules for CoreOS (in Part 1 and Part 2) and lot’s has changed in the CoreOS world.... »

Author image Jason Kulatunga Flatcar, Github, Linux, Kernel 12 Dec 2020

Home Server - Disk Management

Adding a new disk to your homeserver Identify your new devices Take photos of your drives before inserting them. Specifically, you’ll want to track the serial... »

Author image Jason Kulatunga Homeserver, Plex, Hardware, Linux, Supermicro, Nas 20 Nov 2020

Traefik v2 - Advanced Configuration

Traefik is the leading open source reverse proxy and load balancer for HTTP and TCP-based applications that is easy, dynamic, automatic, fast, full-featured, production proven, provides... »

Author image Jason Kulatunga Devops, Docker, Traefik, Letsencrypt, Authelia, Sso 28 May 2020

You Don't Know Jenkins - Part 4 - Kubernetes Slaves

Jenkins is one of the most popular Continuous Integration servers ever. It supports an absurd amount of languages, frameworks, source code management systems and tools via... »

Author image Jason Kulatunga Jenkins, Devops, Groovy, Kubernetes, Dsl, Automation 29 Apr 2020

Docker Hub - Matrix Builds and Tagging using Build Args

If you’re a heavy user of Docker, you’re already intimately familiar with Docker Hub, the official Docker Image registry. One of the best things about Docker... »

Author image Jason Kulatunga Docker, Docker_hub, Devops, Linux, Automation 12 Sep 2019

Ultimate Media Server Build - Part 3 - MediaDepot/CoreOS Configuration

I’ve referenced my home server many times, but I never had the time to go into the details of how it was built or how it... »

Author image Jason Kulatunga Homeserver, Plex, Hardware, Linux, Coreos, Nas 25 Jan 2019

Ultimate Media Server Build - Part 2 - Build Log

I’ve referenced my home server many times, but I never had the time to go into the details of how it was built or how it... »

Author image Jason Kulatunga Homeserver, Plex, Hardware, Linux, Supermicro, Nas 25 Jan 2019

Ultimate Media Server Build - Part 1 - Hardware

I’ve referenced my home server many times, but I never had the time to go into the details of how it was built or how it... »

Author image Jason Kulatunga Homeserver, Plex, Hardware, Linux, Supermicro, Nas 06 Jan 2019

Customize the CoreOS Kernel - Part 2 - Kernel SDK

After running into a roadblock while attempting to build the Intel I915 driver as a kernel module for CoreOS, it became clear that we would need... »

Author image Jason Kulatunga Homeserver, Coreos, Github, Linux, Kernel 02 Jan 2019

Customize the CoreOS Kernel - Part 1 - Kernel Modules

Story Time As a Devops & Infrastructure guy, I’m pretty comfortable with jumping into the unknown, be it infrastructure, architecture or application code. With a bit... »

Author image Jason Kulatunga Homeserver, Coreos, Github, Linux, Kernel 09 Dec 2018

Drawbridge - SSH Config management for Jump/Bastion hosts

In our architecture we have many environments (test/stage/prod/etc), and each environment can have one or more shards, usually broken up by datacenter/avaliablity zone (us-east-1, us-west-2, etc).... »

Author image Jason Kulatunga Devops, Automation, Github, Cloud, Aws, Jumphost, Bastion, Gce, Azure 30 Apr 2018

Jenkins Dockerized Slave Cluster - Premise

Here’s the premise, we have one or more Jenkins masters running our various jobs, and the server is bottlenecking: the UI is sluggish, and builds are... »

Author image Jason Kulatunga Devops, Automation, Github, Docker, Kubernetes, Openstack, Terraform, Jenkins, Cluster, Coreos 25 Mar 2018

You Don't Know Jenkins - Part 3

With the release of Jenkins 2.x, support for Pipeline jobs is built-in. This is important for multiple reasons, but mostly because Pipeline jobs are now the... »

Author image Jason Kulatunga Jenkins, Devops, Groovy, Chef, Dsl, Automation 13 Nov 2017

Devops for Startups & Small Teams

When you’re working on a side-project or at a startup as part of a small focused team, it can be hard to get away from the... »

Author image Jason Kulatunga Devops, Startup, Teams, Startup, Automation, Github, Bitbucket, Loggly, Docker, Travisci, Circleci, Waffle, Cloudflare, Pingdom, Googleanalytics, Newrelic, Capsulecd, Codecov, Coverallsio, Stackdriver, Gitlab 13 Sep 2017

State of the eBook ecosystem

Here’s what I’m looking for. An always available library. I want my books stored in the cloud somewhere, and always available. I mostly end up reading... »

Author image Jason Kulatunga Quietthyme, Ebook, Calibre, Startup, Saas 31 Aug 2017

CapsuleCD v2 Released

CapsuleCD is made up of a series of scripts/commands that make it easy for you to package and release a new version of your library artifact... »

Author image Jason Kulatunga Ruby, Nodejs, Python, Golang, Chef, Capsulecd, Docker 06 Aug 2017

15 Lessons in Golang

Like many developers, I heard a lot of buzz about Golang (or is it Go, I’m still not sure). In case you’re not familiar with it,... »

Author image Jason Kulatunga Golang, Capsulecd, Docker 31 Jul 2017

Local Development with Wildcard DNS

The holy-grail of local development is wildcard DNS: the ability to have *.local.company.com pointing to localhost, your development machine. It doesn’t matter if you’re working on... »

Author image Jason Kulatunga Dns, Dnsmasq, Macos, Docker 07 Apr 2017
Page 1 of 3 Older Posts »
Sparktree © 2024
Proudly published with Jekyll using Jasper