Estava com dificuldades para efetuar login no Dockerhub, então consegui dessa maneira:
- echo "$CI_REGISTRY_PASSWORD" >> ~/pass.txt
- cat ~/pass.txt | docker login -u "$CI_REGISTRY_USER" --password-stdin
Passando a senha da variável para um arquivo e, após, lendo esse arquivo na stdin. Passei o usuário entre aspas duplas.