Ну, это немного странно, поскольку ваш ci-код правильный.
Если вы просто используете gitlab.com и их общих участников, тогда этот .gitlab-ci.yml будет работать.
Одной из возможных причин может быть добавление бегунов в качестве исполнителей ssh / shell в репозитории проекта. Если это так, то указанный вами тег изображения будет просто проигнорирован.
Таким образом, ошибка типа command not found
может возникнуть из-за того, что на сервере, на который вы добавили бегун, не установлена nodejs, и эта ошибка будет происходит для команды npm config...
в перед сценарии с кодом завершения 127, и конвейер завершится с ошибкой и остановится.
Если у вас несколько бегунов, отметьте их и отметьте также свои задания в ci.yml. И если вы пытаетесь запустить задание на своем собственном сервере, тогда вам нужно сначала установить docker.
BTW для docker узла образа: последний вам не нужен npm config set prefix /usr/local
, как он уже есть /usr/local