Skip to content


Gitea is a painless self-hosted Git service. It is similar to GitHub, Bitbucket, and GitLab. On Managed servers, this software can be run as part of the Developer Managed Pack package.

Gitea Package Registry

Gitea from version 1.17 supports Package Registry.

Container Registry

How to use with Docker images.


1) Generating an access token

Create a new token in SettingsApplicationsManage Access Tokens.

2) Creating a repository

We will create a new repository into which we will upload docker images. In our case package-registry-demo.

Push docker image

1) Docker login

docker login -u <gitea_user> https://gitea-demo.tld

We enter the token generated in the previous step as the password.

2) Build docker image

We will create our own Dockerfile and then create a docker image from it:

docker build --tag demo .

We should now see the newly created image:

$ docker image ls                                                       
REPOSITORY   TAG       IMAGE ID       CREATED          SIZE                                              
demo         latest    b9624d0f2bd0   36 seconds ago   627MB

Set the tag for the created image:

docker tag b9624d0f2bd0 gitea-demo.tld/<gitea_user>/package-registry-demo:latest

3) Push the docker image into Container Registry

docker push gitea-demo.tld/<gitea_user>/package-registry-demo:latest

4) Assigning a docker image to a repository

We can now find the Docker image in our Gitea profile and it needs to be linked to the repository: ProfilePackagespackage-registry-demoSettingsLink this package to a repository.

Pull docker image

1) Docker login

docker login -u <gitea_user> https://gitea-demo.tld

We will use the previously generated token as the password.

2) Docker pull

docker pull gitea-demo.tld/<gitea_user>/package-registry-demo:latest