Skip to main content
Version: 1.22.0

Container Registry

Publish Open Container Initiative compliant images for your user or organization. The container registry follows the OCI specs and supports all compatible images like Docker and Helm Charts.

Requirements

To work with the Container registry, you can use the tools for your specific image type. The following examples use the docker client.

Login to the container registry

To push an image or if the image is in a private registry, you have to authenticate:

docker login gitea.example.com

If you are using 2FA or OAuth use a personal access token instead of the password.

Image naming convention

Images must follow this naming convention:

{registry}/{owner}/{image}

When building your docker image, using the naming convention above, this looks like:

# build an image with tag
docker build -t {registry}/{owner}/{image}:{tag} .
# name an existing image with tag
docker tag {some-existing-image}:{tag} {registry}/{owner}/{image}:{tag}

where your registry is the domain of your gitea instance (e.g. gitea.example.com). For example, these are all valid image names for the owner testuser:

gitea.example.com/testuser/myimage

gitea.example.com/testuser/my-image

gitea.example.com/testuser/my/image

note

The registry only supports case-insensitive tag names. So image:tag and image:Tag get treated as the same image and tag.

Push an image

Push an image by executing the following command:

docker push gitea.example.com/{owner}/{image}:{tag}
ParameterDescription
ownerThe owner of the image.
imageThe name of the image.
tagThe tag of the image.

For example:

docker push gitea.example.com/testuser/myimage:latest

Pull an image

Pull an image by executing the following command:

docker pull gitea.example.com/{owner}/{image}:{tag}
ParameterDescription
ownerThe owner of the image.
imageThe name of the image.
tagThe tag of the image.

For example:

docker pull gitea.example.com/testuser/myimage:latest