2017-09-13 48 views
0

运行图像时传递搬运工容器参数我有一个Dockerfile与如何在Jenkinsfile

ENTRYPOINT ["node", "index.js"] 
CMD ["--help"] 

index.js结束可以采取一些不同的论点,我也需要公开的端口的容器,如果我手动运行它,我会这样做:

docker run -p 3000:3000 my_container:latest --arg1 somearg --arg2 anotherarg 

如何在Jenkinsfile中执行此操作?我的测试将与此容器进行通信,因此在运行测试之前需要运行它。我用withRun()得到它在测试运行之前运行,但我不知道如何指定--arg1 somearg --arg2 anotherarg

stage('TestMicroservice') { 
    // 
    // HOW DO I SPECIFY '--arg1 somearg --arg2 anotherarg'? 
    // 
    docker.image("my_container:latest").withRun('-p 3000:3000') { 
     sh 'npm run test-microservice' 
    } 
} 

回答

2

您可以使用withRun

.withRun('-p 3000:3000', '--arg1 somearg --arg2 anotherarg') 
+0

完美的第二个参数!我环顾四周,试图为这个命令和其他人寻找适当的参考。你知道我在哪里找到?你怎么知道withRun()的第二个参数? –

+0

我在问题中查找它https://issues.jenkins-ci.org/browse/JENKINS-33063 –

+0

也许他们应该把文档放在一个更直接的位置..只是说 –