簡體   English   中英

Dockerfile作為具有Maven設置的詹金斯奴隸

[英]Dockerfile as jenkins slave with maven settings

我在我的dockerfile中使用映像jenkins / ssh-slave作為基礎。 我想安裝特定的Maven版本並配置設置。 但這是行不通的,它不是從我的關系中選擇設置來下載工件的。 而且,我不知道誰指定Maven版本:(

您可以在下面看到我的dockerfile。 我試圖安裝鍵入maven:3.5.6的Maven,但它說找不到。 而且我也復制了我的設置,但是maven並沒有去我的網站下載依賴項(settings.xml在本地工作)

FROM jenkins/ssh-slave

# Install selected extensions and other stuff
RUN apt-get update && apt-get -y --no-install-recommends install && apt-get clean   

# Install maven 
RUN apt-get install -y maven

COPY ./settings.xml /usr/share/maven/conf/settings.xml

有人可以幫忙嗎? 提前非常感謝您。

根據您的問題,

我想安裝特定的Maven版本並配置設置。

我建議您使用Maven Wrappermvnw )代替mvn命令。 這將使您可以靈活地構建應用程序,而無需在vm或系統中預先安裝Maven。 由於您正在使用Docker,並且在某處使用mvn clean install命令,因此建議您使用mvnw clean install。

mvn 全新 安裝mvnw全新安裝之間有區別。 如果需要特定版本的Maven,也可以在maven-wrapper.properties文件中進行設置。

我在下面提供一些鏈接,以便對您有用。

https://www.baeldung.com/maven-wrapper

mvnw和mvnw.cmd文件的目的是什么?

如果要在Maven包裝器上有一個非常簡單的示例,請參閱下面的github鏈接。 https://github.com/debjava/maven-wrapper-example

FROM jenkins/ssh-slave

# Install selected extensions and other stuff
RUN apt-get update && apt-get -y --no-install-recommends install && apt-get clean
RUN apt-get install -y curl 

ARG MAVEN_VERSION=3.6.2
ARG USER_HOME_DIR="/usr/jenkins"
ARG SHA=d941423d115cd021514bfd06c453658b1b3e39e6240969caf4315ab7119a77299713f14b620fb2571a264f8dff2473d8af3cb47b05acf0036fc2553199a5c1ee
ARG BASE_URL=https://apache.osuosl.org/maven/maven-3/${MAVEN_VERSION}/binaries

RUN mkdir -p /usr/share/maven /usr/share/maven/ref \
  && curl -fsSL -o /tmp/apache-maven.tar.gz ${BASE_URL}/apache-maven-${MAVEN_VERSION}-bin.tar.gz \
  && echo "${SHA}  /tmp/apache-maven.tar.gz" | sha512sum -c - \
  && tar -xzf /tmp/apache-maven.tar.gz -C /usr/share/maven --strip-components=1 \
  && rm -f /tmp/apache-maven.tar.gz \
  && ln -s /usr/share/maven/bin/mvn /usr/bin/mvn

ENV MAVEN_HOME /usr/share/maven
ENV MAVEN_CONFIG "$USER_HOME_DIR/.m2"

RUN chown -R jenkins:jenkins /home/jenkins &&  chmod -R 777 /home/jenkins
COPY --chown=jenkins:jenkins ./settings.xml /home/jenkins/.m2/settings.xml

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM