- 19, Oct 2024
- #1
Я установил Jenkins на машину с Ubuntu 16.04. Сам Jenkins не запускается в контейнере. Я хочу просто позвонить
using a node image. So here is my Jenkinsfile:[Pipeline] sh [Pipeline_Test_Jenkins_test-4JTFYMX7KSJY6ZH44VINNGEB7WH2D2HWYZN5ABF6O32O2HBQJYXQ@2] Running shell script + docker inspect -f . node . [Pipeline] withDockerContainer Jenkins does not seem to be running inside a container $ docker run -t -d -u 112:116 -w /var/lib/jenkins/workspace/Pipeline_Test_Jenkins_test-4JTFYMX7KSJY6ZH44VINNGEB7WH2D2HWYZN5ABF6O32O2HBQJYXQ@2 -v /var/lib/jenkins/workspace/Pipeline_Test_Jenkins_test-4JTFYMX7KSJY6ZH44VINNGEB7WH2D2HWYZN5ABF6O32O2HBQJYXQ@2:/var/lib/jenkins/workspace/Pipeline_Test_Jenkins_test-4JTFYMX7KSJY6ZH44VINNGEB7WH2D2HWYZN5ABF6O32O2HBQJYXQ@2:rw,z -v /var/lib/jenkins/workspace/Pipeline_Test_Jenkins_test-4JTFYMX7KSJY6ZH44VINNGEB7WH2D2HWYZN5ABF6O32O2HBQJYXQ@2@tmp:/var/lib/jenkins/workspace/Pipeline_Test_Jenkins_test-4JTFYMX7KSJY6ZH44VINNGEB7WH2D2HWYZN5ABF6O32O2HBQJYXQ@2@tmp:rw,z -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** --entrypoint cat node [Pipeline] { [Pipeline] sh [Pipeline_Test_Jenkins_test-4JTFYMX7KSJY6ZH44VINNGEB7WH2D2HWYZN5ABF6O32O2HBQJYXQ@2] Running shell script + cd /path/to/package.json + yarn install yarn install v0.24.6 error An unexpected error occurred: "EACCES: permission denied, mkdir '/.config'". info If you think this is a bug, please open a bug report with the information provided in "/var/lib/jenkins/workspace/Pipeline_Test_Jenkins_test-4JTFYMX7KSJY6ZH44VINNGEB7WH2D2HWYZN5ABF6O32O2HBQJYXQ@2/<path>/yarn-error.log". info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command. [Pipeline] } $ docker stop --time=1 c1147934ea689f71a449e486282db03338b12182368def31bdf8e8cf179ab46a $ docker rm -f c1147934ea689f71a449e486282db03338b12182368def31bdf8e8cf179ab46a [Pipeline] // withDockerContainer [Pipeline] } [Pipeline] // node [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // node [Pipeline] End of Pipeline ERROR: script returned exit code 1 Finished: FAILURE
-u 1000
Довольно просто, правда?
Пользователь/группа Дженкинса mkdir /.config
, and the uid of the node container is 1000
, следовательно, процесс пряжи (который запускается от имени пользователя узла 1000) не может выполнять свои функции, например 112:116
.
Я попытался раскрутить контейнер узла, передав аргумент pipeline {
agent any
stages {
stage('install node modules...') {
agent { docker 'node' }
steps {
sh 'cd /path/to/package.json; yarn install'
}
}
}
}
, it bumped into permission issues when trying to create durable directories.
Похоже на ту или иную проблему, как мне ее обойти?
Журналы Дженкинса:
Ниже показано, где сборка начинается и завершается сбоем.
yarn install
#jenkins #docker #jenkins-pipeline