В настоящее время используется Jenkins Blue Ocean, чтобы попытаться настроить новый конвейер.Это проект, основанный на узлах, и я успешно запускаю npm install
в Dockerfile, однако на более поздних этапах конвейера не будет установлен node_modules
.Это поведение довольно странное.
Jenkinsfile.
pipeline {
agent {
dockerfile {
filename 'Dockerfile.prod'
}
}
stages {
stage('Test') {
steps {
sh 'ls node_modules'
}
}
}
}
Dockerfile.prod
FROM node:8
ADD . /var/www
WORKDIR /var/www
RUN ["npm", "install"]
Во время сборки Dockerfile:
Step 4/4 : RUN ["npm", "install"]
---> Running in de3cd138a40e
...
added 1283 packages in 39.842s
Removing intermediate container de3cd138a40e
Внутриtest
этап Jenkinsfile:
+ ls node_modules
ls: cannot access node_modules: No such file or directory