Jackson Zhou
1 min readMay 13, 2020

--

First, no, the docker doesn’t get built every time unless it has changed. The overhead comes from:

  1. pulling the docker image (note that although it doesn’t get built every time, it needs to get pulled every time) where as the node container sits locally instead of a registry.
  2. orchestration (since it needs arbitrary resource and services). depending on what type of orchestration it uses, it might be faster or slower, but any type of orchestration comes with a cost.

This is what can be inferred without knowing the details of GitHub’s internal implementation.

The chances are, the Node runtime is not even a VM which could actually make sense.

Assuming that Node uses a VM container under the hood, the comparison falls into a base image with relatively fixed resource requirements that sits locally (Node actions) vs. a arbitrary image with unknown resource requirements that is hosted in a registry (Docker actions).

--

--

No responses yet