Uma dica: é possível usar o Container Registry do próprio GitLab com o comando:
docker login -u gitlab-ci-token -p $CI_BUILD_TOKEN registry.gitlab.com
O parâmetro CI_BUILD_TOKEN
nem precisa ser configurado, pois já é adicionado por padrão nos jobs dos pipelines.
Caso queira acessar o Container Registry de fora do GitLab, você pode usar o seu usuário e o Personal Access Token da seguinte forma:
docker login registry.example.com -u <your_username> -p <your_personal_access_token>
Ao usar o Container Registry do Gitlab, é preciso tomar cuidado com o nome das imagens. O nome deve ser registry.gitlab.com/<username>/<project_name>
ou registry.gitlab.com/<namespace>/<project>/<image>
Para saber mais: https://gitlab.com/help/user/packages/container_registry/index