4

Jenkins Docker プラグインを使用してイメージをビルドします (これは機能します)。次のようなコマンドでコンテナーを問題なく実行できます。

 docker run test-env:latest /etc/bootstrap.sh -jenkins

ただし、実行すると

 docker run -u root -v $WORKSPACE:/test test-env:latest /etc/bootstrap.sh -jenkins

私はいくつかの問題に遭遇します。ボリューム /test はコンテナー内に存在しますが、$WORKSPACE に含まれるファイルは含まれていません。Dockerコンテナを実行する前に、

cd $WORKSPACE && ls -al

次の内容を示します。

total 52
drwxr-xr-x 10 root root 4096 Sep  3 15:49 .
drwxr-xr-x  3 root root 4096 Sep  3 15:49 ..
drwxr-xr-x  8 root root 4096 Sep  3 15:49 .git
-rw-r--r--  1 root root  361 Sep  3 15:49 .gitignore
-rw-r--r--  1 root root   71 Sep  3 15:49 README.md
drwxr-xr-x  3 root root 4096 Sep  3 15:49 bin
-rw-r--r--  1 root root 1900 Sep  3 15:49 build.sbt
drwxr-xr-x  3 root root 4096 Sep  3 15:49 conf
drwxr-xr-x  2 root root 4096 Sep  3 15:49 docs
drwxr-xr-x  2 root root 4096 Sep  3 15:49 lib
drwxr-xr-x  2 root root 4096 Sep  3 15:49 project
drwxr-xr-x  3 root root 4096 Sep  3 15:49 scripts
drwxr-xr-x  4 root root 4096 Sep  3 15:49 src

コンテナと共有したいgitリポジトリ(test_repo)を参照してください。すべての正しいファイルが含まれていますが、コンテナ内にある場合

cd /test && ls -al

私が見るのは

total 16
drwxr-xr-x 4 root root 4096 Sep  2 14:30 .
drwxr-xr-x 1 root root 4096 Sep  3 10:27 ..
drwxr-xr-x 3 root root 4096 Sep  2 13:26 test_repo
drwxr-xr-x 5 root root 4096 Sep  2 14:30 target

どちらにも私のコードは含まれていません。マウントするボリュームとして $WORKSPACE/test_repo と $WORKSPACE/target を使用して、さらにテストして確認しました。

$WORKSPACE ファイルがコンテナに表示されないのはなぜですか? どうすれば適切に動作させることができますか?

編集: $WORKSPACE の値 = /var/tmp/workspace/test-jenkins ここで、test-jenkins は私の Jenkins ジョブの名前です

4

0 に答える 0