We deploy 5X faster with warm Docker containers

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • aws-gocljs

    fullstack web should be easy

  • lambdas updatecode api takes less than a second. using container instead of a zip for lambda has advantages, but speed is not one of them.

    i auto rebuild my go zip and patch aws on every code change. it’s done before i alt tab and curl.

    script: https://github.com/nathants/aws-gocljs/blob/master/bin/dev.s...

  • blambda

    Blambda! is a custom runtime for AWS Lambda that lets you write functions using Babashka

  • Your workflow looks great!

    Have you considered going full clojure and using blambda as a backend?

    https://github.com/jmglov/blambda

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • nix2container

    An archive-less dockerTools.buildImage implementation

  • > The key factor behind our decision was the realization that while Docker images are industry standard, moving around 100s of megabytes of images seems unnecessarily heavy-handed when we just need to synchronize a small change.

    I think the culprit is more the GitHub Actions cache than Docker since it seems to be hard to get a clean cache management. I'm not sure about caching Docker image layers, but caching the Nix store with GitHub Actions is pretty complicated (not even sure it's possible): this means we have to download all required Nix store paths on each run, but i consider this is because of a GitHub Action cache limitation.

    So, did you consider using another CI, which offers better caching mechanisms?

    With a CI able to preserve the Nix store (Hydra[1] or Hercules[2] for instance), I think nix2container (author here) could also fit almost all of your requirements ("composability", reproducibility, isolation) and maybe provide better performances because it is able to split your application into several layers [2][3].

    Note i'm pretty sure a lot of Docker CI also allows to efficiently build Docker images.

    [1] https://hercules-ci.com/

    [2] https://grahamc.com/blog/nix-and-layered-docker-images

    [3] https://github.com/nlewo/nix2container/blob/85670cab354f7df6...

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts