41554 blogs · [ { "id": "01a0d526-a4d4-7311-9a43-da9244a19036", "title": "Virtual L2 Networks From Scratch", "url": "https://amf3.github.io/articles/networks/bridges/", "published_at": "2026-09-18T00:00:00+00:00" }, { "id": "01a0d526-a4d4-7311-9a43-da92450b8388", "title": "Self Hosting Publicly Facing Services", "url": "https://amf3.github.io/articles/networks/self_hosting/", "published_at": "2026-09-17T00:00:00+00:00" }, { "id": "01a08727-01f3-72a5-a46e-c09e71826542", "title": "Building and Maintaining an Open Container Image Distribution", "url": "https://amf3.github.io/articles/virtualization/oci_pipeline/", "published_at": "2026-08-08T13:59:56+00:00" }, { "id": "01a08727-01f3-72a5-a46e-c09e722735d8", "title": "No Shell in Your Container? No Problem", "url": "https://amf3.github.io/articles/virtualization/inject_busybox/", "published_at": "2026-06-10T18:01:27+00:00" }, { "id": "01a08727-01f3-72a5-a46e-c09e72714781", "title": "Container Image Validation", "url": "https://amf3.github.io/articles/virtualization/container_validation/", "published_at": "2026-04-22T21:27:51+00:00" }, { "id": "01a08727-01f3-72a5-a46e-c09e730be521", "title": "Declarative Container Builds", "url": "https://amf3.github.io/articles/virtualization/declarative_builds/", "published_at": "2026-04-17T23:20:00+00:00" }, { "id": "01a08727-01f3-72a5-a46e-c09e732aea84", "title": "Hidden Systems in Base Container Images", "url": "https://amf3.github.io/articles/virtualization/base_image/", "published_at": "2026-04-12T18:23:15+00:00" }, { "id": "01a08727-01f3-72a5-a46e-c09e73e783a5", "title": "Open Container Image Format", "url": "https://amf3.github.io/articles/virtualization/oci_image/", "published_at": "2026-02-24T00:29:59+00:00" }, { "id": "01a08727-01f3-72a5-a46e-c09e74bd7ad4", "title": "Docker Socket Myths", "url": "https://amf3.github.io/articles/virtualization/docker_socket/", "published_at": "2026-01-05T20:25:30+00:00" }, { "id": "01a08727-01f3-72a5-a46e-c09e75a7f028", "title": "Decoupling Compute and Storage", "url": "https://amf3.github.io/articles/arch/2swarm_nodes/", "published_at": "2025-12-17T05:51:16+00:00" }, { "id": "01a08727-01f3-72a5-a46e-c09e7614e413", "title": "Uh-oh. Is the router down?", "url": "https://amf3.github.io/articles/virtualization/virtual_router/", "published_at": "2025-11-19T08:06:09+00:00" }, { "id": "01a08727-01f3-72a5-a46e-c09e76dfb09a", "title": "Go CLIs: Creating Subcommands and Flags", "url": "https://amf3.github.io/articles/code/go/cli_args/", "published_at": "2025-09-29T21:17:10+00:00" }, { "id": "01a08727-01f3-72a5-a46e-c09e7771dc6a", "title": "Contact Adam", "url": "https://amf3.github.io/about/contact/", "published_at": "2025-07-14T16:04:02+00:00" }, { "id": "01a08727-01f3-72a5-a46e-c09e77e24851", "title": "Go Generics: A Real World Use Case", "url": "https://amf3.github.io/articles/code/go/real_world_generics/", "published_at": "2025-07-12T04:11:43+00:00" }, { "id": "01a08727-01f3-72a5-a46e-c09e78508bd9", "title": "OpenAPI in Practice: Go Server + Python Client from Spec", "url": "https://amf3.github.io/articles/api/hello_openapi/", "published_at": "2025-07-05T05:43:09+00:00" }, { "id": "01a08727-01f3-72a5-a46e-c09e78cc2c4f", "title": "DIY Docker Volume Drivers: What's Missing", "url": "https://amf3.github.io/articles/storage/docker_volumes/", "published_at": "2025-06-27T05:37:40+00:00" }, { "id": "01a08727-01f3-72a5-a46e-c09e78fbac0a", "title": "Using Tar Files as Object Store Storage", "url": "https://amf3.github.io/articles/storage/tar_objectstore/", "published_at": "2025-05-30T23:46:07+00:00" }, { "id": "01a08727-01f3-72a5-a46e-c09e798825f5", "title": "Virtual Router Lab on macOS with QEMU", "url": "https://amf3.github.io/articles/virtualization/macos_qemu_networks/", "published_at": "2025-05-14T00:00:00+00:00" }, { "id": "01a08727-01f3-72a5-a46e-c09e7a27876f", "title": "Tips for working with qemu images", "url": "https://amf3.github.io/articles/virtualization/qemuimage_tips/", "published_at": "2025-04-06T11:41:29+00:00" }, { "id": "01a08727-01f3-72a5-a46e-c09e7a926b2d", "title": "cloud-init troubleshooting", "url": "https://amf3.github.io/articles/cloudinit/troubleshooting/", "published_at": "2025-03-21T20:28:54+00:00" }, { "id": "01a08727-01f3-72a5-a46e-c09e7afc865e", "title": "Unattended Ubuntu Installs - Virtual Machines to Bare-Metal", "url": "https://amf3.github.io/articles/cloudinit/autoinstall/", "published_at": "2025-03-04T07:07:23+00:00" }, { "id": "01a08727-01f3-72a5-a46e-c09e7b48b012", "title": "Getting started with cloud-init for unattended Linux deployments", "url": "https://amf3.github.io/articles/cloudinit/intro/", "published_at": "2025-02-22T07:06:35+00:00" }, { "id": "01a08727-01f3-72a5-a46e-c09e7be0c29b", "title": "Who, What, and Why", "url": "https://amf3.github.io/about/about/", "published_at": "2025-02-22T05:52:33+00:00" } ] posts Claim your blog
Back to amf3.github.io
Blog · corpus.blog/blogs/amf3.github.io/posts

amf3.github.io

amf3.github.io

2026

2025