Hi HN. My name is Andrey. Range lets you open a Linux environment of any size without downloading it first. Let me just show you what i mean by that. Example 1. Any docker image. Say i want to test something with…

3 points•andreygrehov•about 15 hours ago•0 comments•
Hi HN. My name is Andrey.

Range lets you open a Linux environment of any size without downloading it first.

Let me just show you what i mean by that.

Example 1. Any docker image.

Say i want to test something with Python 3.12

  $ range shell python:3.12
This will download the image and index all the layers, but this happens only once (same as docker pull). The fun part is the second run:

  $ range shell python:3.12

  Range environment
    Artifact          python:3.12
    Logical size      1.35 GB
    Runtime           darwin/arm64
    Workload          interactive
    Profile           4 prior sessions
    Ready             2.82 s

  root@range:/# python3 --version
  Python 3.12.14
You are inside in 2.82 seconds. Now, say you want python:3.13 after that. Since 3.12 and 3.13 have common layers:

  $ range shell python:3.13
  Indexing python:3.13, layer 5/7, 6.20 MB, once
  Indexing python:3.13, layer 6/7, 26.89 MB, once
  Indexing python:3.13, layer 7/7, 249 B, once

  ...

  root@range:/# python3 --version
  Python 3.13.15
You are in! We only downloaded 30MB out of 400MB simply because Python 3.12 and 3.13 share the first 4 layers.

Example 2. I don't want to download at all.

  $ range shell https://github.com/andreygrehov/range/releases/download/demo/go1.23-arm64.range
  [1.85 second later]
  root@range:/go# go version
  go version go1.23.12 linux/arm64
.range is my own format. The filesystem is already indexed, so there is nothing for you to index, therefore almost nothing to download (above example - 6MB out of 1GB). I plan to index top NN docker images so that you don't have to download anything on the first run ever.

See https://getrange.sh to learn more :)

github: https://github.com/andreygrehov/range

0 comments

No comments yet.

Related stories