2017-04-09 13 views
2

ビルドシェルは次のとおりです。ジェンキンスNodeJSPluginノードコマンドが見つからない

echo $PATH 
which node 
ls -l /var/jenkins_home/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/node_6.10.2/bin 
node -v 

結果は次のとおりです。

/var/jenkins_home/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/node_6.10.2/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/lib/jvm/java-1.8-openjdk/jre/bin:/usr/lib/jvm/java-1.8-openjdk/bin 
/var/jenkins_home/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/node_6.10.2/bin/node 
-rwxrwxr-x 1 jenkins jenkins 30503659 Apr 4 09:01 node 
lrwxrwxrwx 1 jenkins jenkins  38 Apr 9 13:09 npm -> ../lib/node_modules/npm/bin/npm-cli.js 
/tmp/hudson8026342196338345661.sh: line 1: node: not found 

なぜそれがノードのコマンドを見つけることができませんか?

私はドッカーと公式のジェンキンの画像を使用しています。

EDIT:ジェンキンス:2.46.1-高山

答えて

1

issue JENKINS-34815 (NodeJS plugin unable to install global NPM packages)で示唆したように、this commentを参照してくださいあなたのldd -l /var/jenkins_home/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/node_6.10.2/bin/node

を確認してください。

現在のドッキングウィンドウのジェンキンスで:2.32.1-高山やプラグインをnodejs:1.0これはノード7.4を使用しているときに再び起こります。
アルパインはPATHにあり実行可能であってもバイナリを実行できません:

+ /var/jenkins_home/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/nodejs7/bin/node -v 

/var/jenkins_home/jobs/busx1/[email protected]/durable-a76d6fd5/script.sh: line 1: /var/jenkins_home/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/nodejs7/bin/node: not found 

nodejsにより、必要に応じて画像がlibstdc++.so.6が含まれていないので、これが起こる:つまり

/lib64/ld-linux-x86-64.so.2 (0x55ae0ad53000) 
    libdl.so.2 => /lib64/ld-linux-x86-64.so.2 (0x55ae0ad53000) 
    librt.so.1 => /lib64/ld-linux-x86-64.so.2 (0x55ae0ad53000) 

Error loading shared library libstdc++.so.6: No such file or directory (needed by /var/jenkins_home/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/nodejs7/bin/node) 
    libm.so.6 => /lib64/ld-linux-x86-64.so.2 (0x55ae0ad53000) 
    libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x7f0ac773e000) 
    libpthread.so.0 => /lib64/ld-linux-x86-64.so.2 (0x55ae0ad53000) 
    libc.so.6 => /lib64/ld-linux-x86-64.so.2 (0x55ae0ad53000) 

を、node: not foundnodeがインストールされていないという意味ではありません(それは、あります実行可能であり、$PATHにあります)。
nodeのいずれかの依存関係が見つからないことを示します。

+0

私はalpineを使用しないでください。またはlibstdC++。so.6 myselfをインストールしないでください。 – hbrls

+0

@hbrls jenkinsの画像はアルパインに基づいています。私が言っているのは、あなたのイメージにはいくつかの要素が欠けているかもしれないということだけです。 'ldd -l'はあなたにどれを伝えますか?見つからない場合は、既存の画像 'jenkins:2.46.1-alpine'に基づいて独自の画像を構築して、不足している要素を追加する必要があります。 – VonC

関連する問題