Merge pull request #2962 from ostenbom/snapshots-docs
Update snapshots docs with garbage collector label
This commit is contained in:
commit
77d7b01233
@ -160,9 +160,13 @@ func (u *Usage) Add(other Usage) {
|
|||||||
// layerPath, tmpDir := getLayerPath(), mkTmpDir() // just a path to layer tar file.
|
// layerPath, tmpDir := getLayerPath(), mkTmpDir() // just a path to layer tar file.
|
||||||
//
|
//
|
||||||
// We start by using a Snapshotter to Prepare a new snapshot transaction, using a
|
// We start by using a Snapshotter to Prepare a new snapshot transaction, using a
|
||||||
// key and descending from the empty parent "":
|
// key and descending from the empty parent "". To prevent our layer from being
|
||||||
|
// garbage collected during unpacking, we add the `containerd.io/gc.root` label:
|
||||||
//
|
//
|
||||||
// mounts, err := snapshotter.Prepare(ctx, key, "")
|
// noGcOpt := snapshotter.WithLabels(map[string]string{
|
||||||
|
// "containerd.io/gc.root": time.Now().UTC().Format(time.RFC3339),
|
||||||
|
// })
|
||||||
|
// mounts, err := snapshotter.Prepare(ctx, key, "", noGcOpt)
|
||||||
// if err != nil { ... }
|
// if err != nil { ... }
|
||||||
//
|
//
|
||||||
// We get back a list of mounts from Snapshotter.Prepare, with the key identifying
|
// We get back a list of mounts from Snapshotter.Prepare, with the key identifying
|
||||||
@ -191,15 +195,13 @@ func (u *Usage) Add(other Usage) {
|
|||||||
//
|
//
|
||||||
// Now that we've verified and unpacked our layer, we commit the active
|
// Now that we've verified and unpacked our layer, we commit the active
|
||||||
// snapshot to a name. For this example, we are just going to use the layer
|
// snapshot to a name. For this example, we are just going to use the layer
|
||||||
// digest, but in practice, this will probably be the ChainID:
|
// digest, but in practice, this will probably be the ChainID. This also removes
|
||||||
|
// the active snapshot:
|
||||||
//
|
//
|
||||||
// if err := snapshotter.Commit(ctx, digest.String(), key); err != nil { ... }
|
// if err := snapshotter.Commit(ctx, digest.String(), key, noGcOpt); err != nil { ... }
|
||||||
//
|
//
|
||||||
// Now, we have a layer in the Snapshotter that can be accessed with the digest
|
// Now, we have a layer in the Snapshotter that can be accessed with the digest
|
||||||
// provided during commit. Once you have committed the snapshot, the active
|
// provided during commit.
|
||||||
// snapshot can be removed with the following:
|
|
||||||
//
|
|
||||||
// snapshotter.Remove(ctx, key)
|
|
||||||
//
|
//
|
||||||
// Importing the Next Layer
|
// Importing the Next Layer
|
||||||
//
|
//
|
||||||
@ -207,7 +209,7 @@ func (u *Usage) Add(other Usage) {
|
|||||||
// above except that the parent is provided as parent when calling
|
// above except that the parent is provided as parent when calling
|
||||||
// Manager.Prepare, assuming a clean, unique key identifier:
|
// Manager.Prepare, assuming a clean, unique key identifier:
|
||||||
//
|
//
|
||||||
// mounts, err := snapshotter.Prepare(ctx, key, parentDigest)
|
// mounts, err := snapshotter.Prepare(ctx, key, parentDigest, noGcOpt)
|
||||||
//
|
//
|
||||||
// We then mount, apply and commit, as we did above. The new snapshot will be
|
// We then mount, apply and commit, as we did above. The new snapshot will be
|
||||||
// based on the content of the previous one.
|
// based on the content of the previous one.
|
||||||
|
Loading…
Reference in New Issue
Block a user