私はnodejsアプリケーションを構築するために宣言構文を使ってJenkinsfileを作成しました。私はドッカーエージェントを使ってビルドしていましたが、今は許可エラーです。これは私のサンプルJenkinsfileです。ジェンキンスパイプラインのドッカーコンテナー内のsudo権限
pipeline {
agent {
docker {
image 'node:8.4'
}
}
stages {
stage('build') {
steps {
sh 'pwd'
sh 'npm --version'
sh 'npm --prefix ./Server install'
}
}
}
}
Unhandled rejection Error: EACCES: permission denied, mkdir '/.npm'
私も、sudoコマンド
sh 'sudo npm --version'
に追加しようとしたけど、それは何のsudoがエラーを発見した私を与えます。どのように私たちはJenkinsfileのドッカーの中に許可を与えることができますか?現在のunixユーザは私がsudoersに追加したjenkinsです。 Jenkinsファイルを実行すると、-uオプションを使用してjenkinsユーザーとグループをドッカーに渡すことがわかります。
docker run -t -d -u 109:116 -w /var/lib/jenkins/testapp
あなたは仕事で-alh' 'ID &&のlsを実行して、私はこの-alh ID && LSを与えている場合は、あなたの質問 –
への出力を添付して、私は を得た結果であることができます* ******* + ID UID = 109 GID = 116グループ= 116 ******** + LS -alh 合計28K drwxr-XR-X 5 109 116 4.0K 9月9日08:08 drwxr-xr-x 4ルートルート4.0K Sep 9 18:02 .. drwxr-xr-x 8 109 116 4.0K Sep 9 18:02 .git -rw-r - r-- 1 109 116 585 9 9 9 08:08 .gitignore drwxr-xr-x 3 109 116 4.0K Sep 9 08:08クライアント -rw-r - r-- 1 109 116 208 9 9 08:08 Jenkinsfile drwxr-xr-x 13 109 116 4.0K Sep 9 08:08サーバー ****** – Krishna