Container Registry¶
This guide explains how to use the Synderys GitLab Container Registry to store and retrieve Docker container images for your projects.
Before You Begin¶
You will need:
- Docker installed on your local machine
- A GitLab account on https://gitlab.synderys.com
- A personal access token with the read_registry and write_registry scopes (see First Login for how to create tokens)
What Is the Container Registry?¶
The container registry is a private Docker image storage service built into GitLab. Every GitLab project has its own registry namespace where you can push and pull Docker images. Images stored in the registry are available to CI/CD pipelines and team members with access to the project.
Signing In to the Registry¶
-
Open your terminal.
-
Run the following command:
docker login registry.synderys.com -
When prompted, enter your GitLab username.
-
For the password, enter your personal access token (not your Synderys password).
What to expect
After a successful login, you will see "Login Succeeded" in your terminal. Docker stores the credentials so you do not need to sign in again until the token expires or is revoked.
Pushing an Image¶
To push a Docker image to the registry:
-
Build your Docker image with a tag that includes the registry path:
docker build -t registry.synderys.com/your-group/your-project/image-name:tag . -
Push the image to the registry:
docker push registry.synderys.com/your-group/your-project/image-name:tag -
The image is now stored in the registry and available to your team and CI/CD pipelines.
The tag format follows this pattern:
registry.synderys.com/<group>/<project>/<image-name>:<tag>
Use descriptive tags such as v1.0.0, latest, or a Git commit hash.
Pulling an Image¶
To pull an image from the registry:
docker pull registry.synderys.com/your-group/your-project/image-name:tag
You must be signed in to the registry and have at least read access to the project.
Viewing Images in GitLab¶
To see all images stored in a project's registry:
- Navigate to your project in GitLab.
- In the left sidebar, click Deploy > Container Registry.
- You will see a list of image repositories with their tags, sizes, and upload dates.
From this page you can also delete old tags that are no longer needed.
Troubleshooting FAQ¶
Q: I see "unauthorized: authentication required" when pushing or pulling.
: Run docker login registry.synderys.com again. Your token may have expired or been revoked. Create a new personal access token with the read_registry and write_registry scopes.
Q: I can pull images but cannot push. : Your personal access token may not have the write_registry scope, or you may not have Developer (or higher) access to the project. Check your token scopes and your project role.
Q: The push fails with "denied: requested access to the resource is denied". : Verify that your image tag matches your project path exactly. The group name, project name, and image name in the tag must match your GitLab project structure.
Q: How do I delete old images? : In GitLab, go to your project > Deploy > Container Registry. Click on an image repository, select the tags you want to remove, and click Delete. Deleted images cannot be recovered.
Q: Can CI/CD pipelines access the registry automatically? : Yes. GitLab CI/CD provides a built-in token that pipelines use to push and pull images without additional configuration. See CI/CD Runners for more information.