【问题标题】:Jenkins. Invalid agent type "docker" specified. Must be one of [any, label, none]詹金斯。指定的代理类型“docker”无效。必须是 [any, label, none] 之一
【发布时间】:2020-09-26 21:52:05
【问题描述】:

我的 JenkinsFile 看起来像:

pipeline {
    agent { 
        docker { 
            image 'node:12.16.2'
            args '-p 3000:3000'
        } 
    }
    stages {
        stage('Build') {
            steps {
                sh 'node --version'
                sh 'npm install'
                sh 'npm run build'
            }
        }
        stage ('Deliver') {
            steps {
                sh 'readlink -f ./package.json'
            }
        }
    }
}

我曾经在本地拥有 Jenkins,并且此配置有效,但我将其部署到远程服务器并收到以下错误:

WorkflowScript: 3: Invalid agent type "docker" specified. Must be one of [any, label, none] @ line 3, column 9.
           docker { 

我在网上找不到解决这个问题的方法,请帮帮我

【问题讨论】:

  • 这可能是由于没有安装 Docker Pipeline 插件。
  • 我安装了插件,在全局设置中指明了docker主机,但还是报这个错误

标签: node.js docker jenkins


【解决方案1】:

您必须安装 2 个插件:Docker pluginDocker Pipeline。希望对您有所帮助。

【讨论】:

  • 由于某种原因这没有帮助
  • 在完全重新安装并安装所有必要的插件后,我有这个错误:“Jenkins”没有标签“docker”
  • @Zimovik007 好吧,我用的是this tutorial。我已经完成了所有先决条件(尽管对于 Ubuntu 18.04,也可以在 DigitaOcean 上找到),唯一的障碍是我在上面的评论中提到的这 2 个插件。您可能会遵循相同的路线,看看它会带来什么。对我来说,我有一个工作的 Jenkins 管道。请注意,他们使用的 Node 应用程序已经过时并且无法正常工作。这将需要大量更新。虽然管道本身可以工作。
  • 嗯,我觉得我一直在做错事
【解决方案2】:

而不是 代理人 { 码头工人{ 图片“节点:12.16.2” 参数'-p 3000:3000' } }

试试 代理人 { 任何 { 图片“节点:12.16.2” 参数'-p 3000:3000' } }

这对我有用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-08-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-12
    • 1970-01-01
    • 1970-01-01
    • 2018-11-11
    相关资源
    最近更新 更多