Docker插件的Jenkins错误:脚本无法使用方法

前端之家收集整理的这篇文章主要介绍了Docker插件的Jenkins错误:脚本无法使用方法 前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我试图从我的Jenkins Pipeline发布到Docker,但是我尝试的大多数事情都会导致错误.我最近的尝试是这样的:

  1. docker.withDockerRegistry('https://docker-registry.myco.com/lsacco/swagger-rest','docker-credential') {
  2. def image = docker.image(APPLICATION_NAME);
  3. image.tag("latest");
  4. image.push()
  5. }

当我运行它时,jenkins输出错误

  1. org.jenkinsci.plugins.scriptsecurity.sandBox.RejectedAccessException: Scripts not permitted to use method groovy.lang.GroovyObject invokeMethod java.lang.String java.lang.Object (org.jenkinsci.plugins.docker.workflow.Docker withDockerRegistry java.lang.String java.lang.String org.jenkinsci.plugins.workflow.cps.CpsClosure2)
  2. at org.jenkinsci.plugins.scriptsecurity.sandBox.whitelists.StaticWhitelist.rejectMethod(StaticWhitelist.java:163)
  3. at org.jenkinsci.plugins.scriptsecurity.sandBox.groovy.SandBoxInterceptor.onMethodCall(SandBoxInterceptor.java:78)
  4. at org.jenkinsci.plugins.scriptsecurity.sandBox.groovy.SandBoxInterceptor.onMethodCall(SandBoxInterceptor.java:69)
  5. at org.kohsuke.groovy.sandBox.impl.Checker$1.call(Checker.java:149)
  6. at org.kohsuke.groovy.sandBox.impl.Checker.checkedCall(Checker.java:146)
  7. at com.cloudbees.groovy.cps.sandBox.SandBoxInvoker.methodCall(SandBoxInvoker.java:15)
  8. at WorkflowScript.dockerDeploy(WorkflowScript:290)
  9. at WorkflowScript.run(WorkflowScript:76)
  10. at ___cps.transform___(Native Method)
  11. at com.cloudbees.groovy.cps.impl.ContinuationGroup.methodCall(ContinuationGroup.java:55)
  12. at com.cloudbees.groovy.cps.impl.FunctionCallBlock$ContinuationImpl.dispatchOrArg(FunctionCallBlock.java:106)
  13. at com.cloudbees.groovy.cps.impl.FunctionCallBlock$ContinuationImpl.fixArg(FunctionCallBlock.java:79)
  14. at sun.reflect.GeneratedMethodAccessor317.invoke(Unknown Source)
  15. at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  16. at java.lang.reflect.Method.invoke(Method.java:498)
  17. at com.cloudbees.groovy.cps.impl.ContinuationPtr$ContinuationImpl.receive(ContinuationPtr.java:72)
  18. at com.cloudbees.groovy.cps.impl.ClosureBlock.eval(ClosureBlock.java:40)
  19. at com.cloudbees.groovy.cps.Next.step(Next.java:58)
  20. at com.cloudbees.groovy.cps.Continuable.run0(Continuable.java:154)
  21. at org.jenkinsci.plugins.workflow.cps.SandBoxContinuable.access$001(SandBoxContinuable.java:19)
  22. at org.jenkinsci.plugins.workflow.cps.SandBoxContinuable$1.call(SandBoxContinuable.java:33)
  23. at org.jenkinsci.plugins.workflow.cps.SandBoxContinuable$1.call(SandBoxContinuable.java:30)
  24. at org.jenkinsci.plugins.scriptsecurity.sandBox.groovy.GroovySandBox.runInSandBox(GroovySandBox.java:106)
  25. at org.jenkinsci.plugins.workflow.cps.SandBoxContinuable.run0(SandBoxContinuable.java:30)
  26. at org.jenkinsci.plugins.workflow.cps.CpsThread.runNextChunk(CpsThread.java:164)
  27. at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.run(CpsThreadGroup.java:277)
  28. at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.access$000(CpsThreadGroup.java:77)
  29. at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup$2.call(CpsThreadGroup.java:186)
  30. at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup$2.call(CpsThreadGroup.java:184)
  31. at org.jenkinsci.plugins.workflow.cps.CpsVmExecutorService$2.call(CpsVmExecutorService.java:47)
  32. at java.util.concurrent.FutureTask.run(FutureTask.java:266)
  33. at hudson.remoting.SingleLaneExecutorService$1.run(SingleLaneExecutorService.java:112)
  34. at jenkins.util.ContextResettingExecutorService$1.run(ContextResettingExecutorService.java:28)
  35. at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
  36. at java.util.concurrent.FutureTask.run(FutureTask.java:266)
  37. at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
  38. at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  39. at java.lang.Thread.run(Thread.java:745)

我正在使用最新的Jenkins以及所有最新的插件更新.有任何想法吗?

1.642.2jenkins

  1. Plugins.txt
  2. ace-editor:1.1
  3. ant:1.2
  4. antisamy-markup-formatter:1.3
  5. async-http-client:1.7.24
  6. aws-credentials:1.12
  7. aws-java-sdk:1.10.45
  8. branch-api:1.3
  9. build-token-root:1.3
  10. cloudbees-folder:5.3
  11. conditional-buildstep:1.3.3
  12. config-file-provider:2.10.0
  13. copy-to-slave:1.4.4
  14. copyartifact:1.37
  15. credentials-binding:1.7
  16. credentials:1.25
  17. cvs:2.12
  18. docker-build-publish:1.1
  19. docker-commons:1.3.1
  20. docker-custom-build-environment:1.6.4
  21. docker-traceability:1.1
  22. docker-workflow:1.4
  23. dockerhub-notification:1.0.2
  24. durable-task:1.8
  25. envinject:1.92.1
  26. external-monitor-job:1.4
  27. git-client:1.19.6
  28. git-server:1.6
  29. git:2.4.2
  30. github-api:1.72.1
  31. github:1.17.1
  32. handlebars:1.1.1
  33. jackson2-api:2.5.4
  34. javadoc:1.3
  35. jenkins-jira-issue-updater:1.18
  36. jira:2.2
  37. job-dsl:1.44
  38. jquery:1.11.2-0
  39. jquery-detached:1.2.1
  40. junit:1.11
  41. ldap:1.11
  42. mailer:1.16
  43. managed-scripts:1.2.1
  44. mapdb-api:1.0.6.0
  45. mask-passwords:2.8
  46. matrix-auth:1.3.2
  47. matrix-project:1.6
  48. maven-plugin:2.12.1
  49. momentjs:1.1.1
  50. multi-branch-project-plugin:0.4.1
  51. node-iterator-api:1.5
  52. nodelabelparameter:1.7.1
  53. pam-auth:1.2
  54. Parameterized-Remote-Trigger:2.2.2
  55. parameterized-trigger:2.30
  56. pipeline-rest-api:1.0
  57. pipeline-stage-view:1.0
  58. plain-credentials:1.1
  59. promoted-builds:2.25
  60. rebuild:1.25
  61. run-condition:1.0
  62. scm-api:1.1
  63. script-security:1.17
  64. skip-certificate-check:1.0
  65. ssh-credentials:1.11
  66. ssh-slaves:1.10
  67. subversion:2.5.7
  68. swarm:2.0
  69. timestamper:1.7.4
  70. token-macro:1.12.1
  71. translation:1.12
  72. vsphere-cloud:2.11
  73. workflow-aggregator:1.15
  74. workflow-api:1.15
  75. workflow-basic-steps:1.15
  76. workflow-cps-global-lib:1.15
  77. workflow-cps:1.15
  78. workflow-durable-task-step:1.15
  79. workflow-job:1.15
  80. workflow-multibranch:1.15
  81. workflow-scm-step:1.15
  82. workflow-step-api:1.15
  83. workflow-support:1.15
最佳答案
我可以通过在此Docker image的从属服务器上安装docker-io并使用单独的Docker主机来解决这个问题,该主机可以为构建,运行docker镜像并将其推送到注册表所需的调用提供服务.

我最终使用以下脚本解决了这个问题:

  1. docker.withServer(DOCKER_MACHINE_HOSTNAME) {
  2. def image = docker.build(DOCKER_TAG,'.')
  3. // Test container then stop and remove it
  4. def container = image.run('--name ' + DOCKER_CONTAINER_NAME)
  5. container.stop()
  6. docker.withRegistry(DOCKER_REGISTRY,QUAY_CREDENTIALS_ID ) {
  7. image.push(DOCKER_APPLICATION_TAG)
  8. }
  9. }

猜你在找的Docker相关文章