Skip to content
HomeVideosBooksBlogs
AllTop postsTopics
Podcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    I

    Ivan Velichko

    iximiuz.com · Personal blog · on HN since 2019

    Ivan Velichko writes explanatory posts and tutorials on containers, Linux, Kubernetes, and networking.

    Visit blogRSSHN submissions
    DevOps & CloudOpen Source & LinuxNetworking
    What HN says

    Commenters recommend it for explaining how containers work under the hood, with visual explanations of namespaces and cgroups, plus container debugging guides.

    Stats for nerds
    53HN people shared it
    82linked in comments
    1.8Kstory points
    Nov 2025last shared
    2021people per year2025

    Top posts on HN

    1. 1
      Container networking is simple (2020)
      4 people · 282 points · first shared 2020 · 67 comments on HN
    2. 2
      Learning containers from the bottom up
      5 people · 262 points · first shared 2021 · 22 comments on HN
    3. 3
      Kubernetes reinvented virtual machines in a good sense
      1 person · 186 points · first shared 2022 · 196 comments on HN
    4. 4
      Computer Networking Fundamentals – Learning Series (2023)
      1 person · 180 points · first shared 2024 · 14 comments on HN
    5. 5
      DevOps, SRE, and Platform Engineering
      2 people · 176 points · first shared 2021 · 95 comments on HN
    6. 6
      Building a Firecracker-Powered Course Platform to Learn Docker and Kubernetes
      4 people · 158 points · first shared 2023 · 12 comments on HN
    7. 7
      Containers vs. pods – taking a deeper look
      3 people · 153 points · first shared 2021 · 78 comments on HN
    8. 8
      Ethernet and IP Networking 101
      5 people · 125 points · first shared 2021 · 8 comments on HN
    9. 9
      The Need for Slimmer Containers
      1 person · 80 points · first shared 2021 · 69 comments on HN
    10. 10
      Not every container has an operating system inside (2020)
      4 people · 12 points · first shared 2020 · Discussion on HN

    What HN people wrote when they linked it

    • kalaraceyFeb 2021

      Thanks for writing this up. I saw your original comment a while back was intrigued, and I got it working last weekend on a 2-vm vagrant private network setup, but only by constructing the network prefix by using a 32 bit ULA prefix concatenated on the full 32 bit ipv4. I think it worked (hooked up wireshark to a tcpdump of the vm's interface to the private network and saw the 6-in-4 packets) but I didn't need to use the `6rd-relay_prefix` argument to ip tunnel, do you have any idea why that might be? I suspect 32+32 is the default (vs. your 40+24), and if you want to only use the lower 24 bits of the ipv4, you need to indicate to the kernel what netmask you are using on your ipv4 network ("6rd relay prefix"). I guess that would buy you either more randomness in your ULA prefix, or some more ipv6 subnets per ipv4 vm.

      You can explore this a bit further and set up some net namespaces, connect them to the host vm via a bridge device, assign them ipv6 addresses from the vm host /64 network, and then set up a default route inside each container to the /32 or /40 you're using via the vm host's address on the host local /64. It's cool to see one container on host 1 talk to another on host 2. You're basically subnetting the /40 for each host; each host is analogous to a household in 6rd, and the containers are like your devices on your lan with globally routable ipv6 addresses (except we're using a ULA prefix instead of a globally routable ipv6 prefix assigned to an ISP, so our…

    • adqlMar 2023

      Same way you do with any other app not specifically designed for it; you start 2 copies of it and put loadbalancer in front of it. I did that via some systemd voodoo

      But TECHNICALLY to do that in one without external proxy you'd need to figure out how to set SO_REUSEPORT for the web socket handler, then start the second one before the first.

      Haven't actually tried it but someone apparently did: https://iximiuz.com/en/posts/go-net-http-setsockopt-example/

      You'd still have any ongoing connections cut unless you unbind socket and then finish any existing connection, which would be pretty hard with default http server.

      I just put HAProxy instance on my VPS that does all of that, including only allowing traffic once app says "yes I am ok" in healthcheck. Then the app can have "shutting down" phase, where it reports "I am down" on healthcheck but still finished any active connections to the client.

    • pestsJun 2021

      How is this true?

      A container _is_ an ordinary process.

      https://iximiuz.com/en/posts/not-every-container-has-an-operating-system-inside/#container-is-just-a-processes

      (we just discussed another article by the same author a few days ago on slimmer containers)

      "The container process is isolated (namespaces) from the rest of the system and restricted from both the resource consumption (cgroups) and security (capabilities, AppArmor, Seccomp) standpoints. But in the end, this is still a regular process, same as any other process on the host system."

    • anderspitmanNov 2022

      FWIW it's not too difficult to convert a docker image to a VM rootfs. See rootfs_builder[0] for example.

      I'm currently working on a wrapper for QEMU that has docker-like semantics for pull/run/start/stop/exec/etc, but it will pull docker images from docker registries and convert them to qcow2 for you and run them in QEMU. It works on Linux and Windows and should run on MacOS and BSD eventually.

      [0]: https://github.com/ForAllSecure/rootfs_builder

      EDIT: Also see https://iximiuz.com/en/posts/from-docker-container-to-bootable-linux-disk-image/

    • ramchipJan 2025

      Yeah, I'm simplifying a bit. It may not cause an immediate exit, but it can leave the service broken in unpredictable ways. See this discussion for instance: https://iximiuz.com/en/posts/go-http-handlers-panic-and-deadlocks/

    • kitdNov 2025

      Not that I could find. There is always the option to use a sidecar container, eg:

      https://matthewsanabria.dev/posts/no-shell-for-you-container/

      https://iximiuz.com/en/series/mastering-container-debugging/

    Related

    iximiuz Labslabs.iximiuz.com17 people

    How Container Filesystem Works: Building a Docker-Like Container from Scratch

    iximiuz Labs
    Personal · last shared 2026
    Eric Chiangericchiang.github.io16 people

    Analyzing Spotify Stream History

    Eric Chiang
    Personal · last shared 2025
    Cilium Blogcilium.io47 people

    eBPF – The Future of Networking and Security

    Cilium Blog
    Company · last shared 2026
    CoreOS Blogcoreos.com316 people

    CoreOS is building a container runtime, Rocket

    CoreOS Blog
    Company · last shared 2020
    Kubernetes Blogblog.kubernetes.io89 people

    Kubernetes 1.10 released

    Kubernetes Blog
    Company · last shared 2018
    Red Hat Developerdevelopers.redhat.com417 people

    Transitioning from Docker to Podman

    Red Hat Developer
    Company · last shared 2026
    Jérôme Petazzonijpetazzo.github.io70 people

    Containers, microservices, and service meshes

    Jérôme Petazzoni
    Personal · last shared 2025
    Technicallytechnically.substack.com19 people

    I built a (basic) Substack clone in a month

    Technically
    Publication · last shared 2023