詹金斯在以centOS为基础的容器中运行?

问题描述 投票:-1回答:1

我刚刚开始学习docker和Jenkins,并希望在Docker容器中运行Jenkins。

  • 我指的是这个repo on github。它有一个DockerfileDockerfile link)使用openjdk:8-jdk-stretch作为其基本图像
  • 我想使用centOS /任何其他较小的基本图像。
  • 我尝试写FROM centOS而不是FROM openjdk:8-jdk-stretch,但这不起作用。
  • 我希望它在9090上的HTTP端口55000和AGENT端口上运行。

我得到的输出看起来像这个Output

所以这就是我对Dockerfile所做的。

FROM openjdk:8-jdk-stretch
RUN apt-get update && apt-get install -y git curl && rm -rf/var/lib/apt/lists/*
ARG user=jenkins
ARG group=jenkins
ARG uid=1000
ARG gid=1000
ARG http_port=9090
ARG agent_port=55000

根据这个DockerfileDockerfile Link)保持所有其他变化相同

我希望我的容器在CentOS上运行Jenkins /任何其他较小的基本映像,并能够将该容器映像推送到我的DockerHub。我很震惊,任何帮助/领导都会受到赞赏。

docker jenkins dockerfile dockerhub
1个回答
2
投票

詹金斯图像大小

如果你想要一个较小的图像,只需使用以下image tags之一:

  • jenkinsci / jenkins:2.154-slim(408 MB)
  • jenkinsci / jenkins:2.154-alpine(222 MB)

发布端口

现在为端口。在容器内打开的端口并不重要,因为docker将为您提供publish它们在docker主机上选择的任何端口的能力。

简而言之,启动您的容器:

docker run -d \
    -p 9090:8080 \
    -p 55000:50000 \
    jenkinsci/jenkins:2.154-alpine

将文件添加到Jenkins容器中

如果需要将文件添加到Jenkins容器,只需使用卷:

docker run -d \
    -p 9090:8080 \
    -p 55000:50000 \
    -v /home/somewhere/workspace/:/my_data \
    jenkinsci/jenkins:2.154-xxxx

将软件添加到Jenkins图像

jenkinsci/jenkins:2.154-slim

苗条的味道图像是基于FROM openjdk:8-jdk-slim本身是基于FROM debian:stretch-slim。现在我们知道它基于Debian,安装软件可以用`ap完成

FROM jenkinsci/jenkins:2.154-slim 
USER root
RUN apt-get update \
    && apt-get install -y \
      curl \
      git \
    && rm -rf/var/lib/apt/lists/*
USER jenkins

jenkinsci/jenkins:2.154-alpine

在Alpine风格的图像中,您使用apk安装软件。

FROM jenkinsci/jenkins:2.154-alpine 
USER root
RUN apk --update add \
      curl \
      git 
USER jenkins

CentOS Jenkins图片

没有基于CentOS的官方Jenkins docker图像。虽然制作你自己的东西是可能的,但是你花费时间来制作一个有效的Docker文件,以及你需要花费多少时间来维护它,这很可能不值得它给你带来额外的价值。

© www.soinside.com 2019 - 2024. All rights reserved.