Skip to content

Commit

Permalink
docs: add an article for "immutable image tags"
Browse files Browse the repository at this point in the history
Fixes #160

Signed-off-by: Ramkumar Chinchani <[email protected]>
  • Loading branch information
rchincha committed Mar 13, 2024
1 parent 9d8c6e5 commit 39a6d6c
Showing 1 changed file with 49 additions and 0 deletions.
49 changes: 49 additions & 0 deletions docs/articles/immutable-tags.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
# Immutable Image Tags

> :point_right: Immutable image tag support is achieved by leveraging authorization policies.
It is considered best practice to avoid changing the content once a software
version has been released. While `zot` does not have an explicit configuration
flag to make image tags immutable, the same effect can be achieved with
[authorization](../articles/authn-authz.md) as follows.

## Immutable For All Users

By setting the `defaultPolicy` to "read" and "create" for a particular
repository, images can be pushed (once) and pulled but further updates are
rejected.

```json
{
...
"repositories": {
"**": {
"defaultPolicy": ["read", "create"]
}
}
...
}
```

## Immutable With Overrides

Like the example above, by setting the `defaultPolicy` to "read" and "create"
for a particular repository, images can be pushed (once) and pulled but further
updates are rejected. However, exceptions can be made for some users and
user-specific policies can be added to allow "update" operation.

```json
{
...
"repositories": {
"**": {
"policies": [{
"users": ["alice", "bob"],
"actions": ["read", "create", "update"]
}],
"defaultPolicy": ["read", "create"]
}
}
...
}
```

0 comments on commit 39a6d6c

Please sign in to comment.