diff --git a/docs/INSTALL.md b/docs/INSTALL.md index bd139287a..d475226bf 100644 --- a/docs/INSTALL.md +++ b/docs/INSTALL.md @@ -174,3 +174,7 @@ We assume that you are using CRI-O newer than https://github.com/cri-o/cri-o/pul systemctl restart containerd systemctl restart docker ``` + +## Using stargz-snapshotter on Lima + +See [`./lima.md`](./lima.md) diff --git a/docs/lima.md b/docs/lima.md new file mode 100644 index 000000000..dfa1453a4 --- /dev/null +++ b/docs/lima.md @@ -0,0 +1,47 @@ +# Using stargz-snapshotter on Lima + +This document describes how to get started with stargz-snapshotter on [Lima](https://github.com/lima-vm/lima). +Lima's default image includes stargz-snapshotter so you don't need additional installation on the VM. + +## Enable Stargz Snapshotter using `--snapshotter=stargz` flag + +nerdctl's `--snapshotter=stargz` flag enables stargz-snapshotter. + +``` +$ nerdctl.lima --snapshotter=stargz system info | grep stargz + Storage Driver: stargz +``` + +Using this flag, you can perform lazy pulling of a python eStargz image and run it. + +``` +$ nerdctl.lima --snapshotter=stargz run --rm -it --name python ghcr.io/stargz-containers/python:3.13-esgz +Python 3.13.2 (main, Feb 6 2025, 22:37:13) [GCC 12.2.0] on linux +Type "help", "copyright", "credits" or "license" for more information. +>>> +``` + +## Use Stargz Snapshotter as the default snapshotter + +nerdctl recognizes an environment variable `CONTAINERD_SNAPSHOTTER` for the snapshotter to use. +You can add this environment variable to the VM by configuring Lima config as shown in the following: + +``` +$ cat <> ~/.lima/_config/override.yaml +env: + CONTAINERD_SNAPSHOTTER: stargz +EOF +$ limactl stop +$ limactl start +$ nerdctl.lima system info | grep Storage +Storage Driver: stargz +``` + +You can perform lazy pulling of eStargz using nerdctl, without any extra flags. + +``` +$ nerdctl.lima run --rm -it --name python ghcr.io/stargz-containers/python:3.13-esgz +Python 3.13.2 (main, Feb 6 2025, 22:37:13) [GCC 12.2.0] on linux +Type "help", "copyright", "credits" or "license" for more information. +>>> +```