当前位置: 首页 > 面试题库 >

使用默认插件设置Docker Jenkins

王曜文
2023-03-14
问题内容

我想创建一个基于Jenkins的映像,并安装一些插件npm。为此,我有以下内容Dockerfile

FROM jenkins:2.60.3
RUN install-plugins.sh bitbucket
USER root
RUN apt-get update
RUN curl -sL https://deb.nodesource.com/setup_8.x | bash -
RUN apt-get install -y nodejs
RUN npm --version
USER jenkins

效果很好,但是当我运行图像时,我遇到两个问题:

  • 似乎由于某些原因,我尝试手动安装的插件没有保留下来。
  • 系统提示我要安装的插件列表,但我不想安装其他任何插件。

我是否缺少配置Dockerfile的任何东西,还是我想实现的目标根本不可能?


问题答案:

没有看到的内容install- plugins.sh,我无法评论为什么插件没有持久化。这很可能是由不正确的安装目标引起的。持久性在这个阶段不应该成为问题,因为插件安装内置在映像本身中。

对于后一个问题,通过将行添加ENV JAVA_OPTS=-Djenkins.install.runSetupWizard=false到Dockerfile中,您应该能够完全跳过安装向导。请注意,如果Jenkins图像暴露在世界范围内,这可能会带来安全风险,因为此选项会禁止身份验证

编辑:Docker图像的默认插件目录是 /var/jenkins_home/plugins

编辑2:根据Jenkins Docker存储库上的自述文件,添加该行RUN echo 2.0 > /usr/share/jenkins/ref/jenkins.install.UpgradeWizard.state应完成相同的操作



 类似资料:
  • 使用 Regedit.exe 来改写默认设置 要定制 Microsoft® Windows® 注册表设置,可使用 Regedit.exe 来改写在对 Microsoft Jet 数据库引擎进行注册时建立起来的默认设置。因为任何不指定其它注册表位置的应用程序均将使用这些新的默认设置,所以,这种修改方法最缺乏灵活性。 请参阅 在应用程序的注册表树中创建一个部分来管理设置 使用 Microsoft OL

  • 什么是Locale Locale是一组描述世界上某一特定区域文本格式和语言习惯的设置的集合。locale名通常由三个部分组成:第一部分,是一个强制性的,表示语言的缩写,例如"en"表示英文或"zh"表示中文。第二部分,跟在一个下划线之后,是一个可选的国家说明符,用于区分讲同一种语言的不同国家,例如"en_US"表示美国英语,而"en_UK"表示英国英语。最后一部分,跟在一个句点之后,是可选的字符集

  • 问题内容: 我的下拉列表中有很多选项,例如: 我需要选择在标签中有价值 的是我自己的 选项,而不是按属性。 我该如何使用jQuery? 问题答案: 如果您想为此使用jQuery,请尝试以下代码。 更新: 在Vivek发表评论后,正确指出了steven spielberg想通过其Text值选择该选项。 下面是更新的代码。 您需要使用选择器通过包含的文本进行查找。 当获取和设置属性时,jQuery p

  • Apache Kafka文档说明: 内部Kafka Streams使用者max.poll.interval.ms默认值已从300000更改为integer.max_value

  • 10.6. 默认事务设置 默认情况下事务设置(语义)如下: 异常处理:RuntimeException 导致回滚,而普通异常(checked )则不会 事务可读可写 隔离级别:TransactionDefinition.ISOLATION_DEFAULT 超时设置:TransactionDefinition.TIMEOUT_DEFAULT org.springframework.transacti

  • 有什么建议吗? DS 代码为: 在其上运行命令的: 项目中的位置: