【问题标题】:dockerfile for creating a custom jenkins image用于创建自定义 jenkins 映像的 dockerfile
【发布时间】:2021-08-28 15:10:02
【问题描述】:

使用 jenkins/jenkins:lts-dk11 创建容器 - 据我所知,还必须使用主目录创建 Jenkins 用户,但这并没有发生 下面是docker文件,我是不是做错了什么?

Dockerfile:

FROM jenkins/jenkins:lts-jdk11
WORKDIR /var/jenkins_home
RUN apt-get update
COPY terraform .
COPY sencha .
COPY go .
COPY helm.
RUN chown -R jenkins:jenkins /var/jenkins_home

内置:

docker build .

图像被创建,容器也被创建,我看到 Jenkins 用户的 id 为 1000,但这个用户没有主目录,而且,helm,go,sencha,terraform 也没有安装。 我确实执行到容器中以仔细检查是否安装了 terraform #terraform --version,我看到找不到命令 #which terraform 也没有显示任何结果。 go、sencha 和 helm 的输出相同

有什么建议吗?

【问题讨论】:

  • 我们如何安装 sencha cmd,sencha cmd 在运行 docker build 时需要交互式会话。

标签: docker jenkins docker-compose dockerfile devops


【解决方案1】:

您需要将二进制文件安装在/usr/local/bin/ 路径中,例如:

FROM jenkins/jenkins:lts-jdk11

WORKDIR /var/jenkins_home

RUN apt-get update

COPY terraform /usr/local/bin/terraform

顺便说一句,docker 映像 jenkins:lts-jdk11 基于 debian 发行版,因此您可以使用 apt 包管理器来安装您的应用程序。

【讨论】:

  • 是的jenkins:lts-jdk11是基于Debian的,但是我们如何安装“Sencha”,它需要交互式会话到许可协议、安装路径等
  • 新错误:#docker run 无法写入 /var/jenkins_home/copy_reference_file.log。卷权限错误?
  • 看起来像安装 sencha,您需要获取容器的终端访问权限,进行更改,然后提交新图像。 Sencha 无法通过 dockerfile 安装,因为安装时需要人工干预
猜你喜欢
  • 2017-05-07
  • 1970-01-01
  • 1970-01-01
  • 2015-03-01
  • 1970-01-01
  • 2019-01-25
  • 2016-09-11
  • 2020-06-27
  • 2019-09-24
相关资源
最近更新 更多