Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何通过docker启动jenkins cli?_Docker_Jenkins_Scripting_Jenkins Cli - Fatal编程技术网

如何通过docker启动jenkins cli?

如何通过docker启动jenkins cli?,docker,jenkins,scripting,jenkins-cli,Docker,Jenkins,Scripting,Jenkins Cli,我已经创建了安装java、jenkins、jenkins cli的docker映像。现在我需要通过jenkins cli传递一些参数,所以我需要启动jenkins cli。我该怎么做?我不知道它是如何发射的 这是我的剧本 FROM ubuntu:14.04 RUN apt update; \ apt upgrade -y; \ apt install -y default-jdk curl wget git maven nano unzip; \ apt-get clean

我已经创建了安装java、jenkins、jenkins cli的docker映像。现在我需要通过jenkins cli传递一些参数,所以我需要启动jenkins cli。我该怎么做?我不知道它是如何发射的

这是我的剧本

    FROM ubuntu:14.04
RUN apt update; \
  apt upgrade -y; \
  apt install -y default-jdk curl wget git maven nano unzip; \
  apt-get clean
ENV JAVA_HOME /usr
ENV PATH $JAVA_HOME/bin:$PATH

RUN apt-get autoclean $$ apt-get clear cache
RUN apt-get -yqq update 
RUN apt-get -yqq --no-install-recommends install git bzip2 curl unzip
RUN apt-get update

# copy jenkins war file to the container
ADD http://mirrors.jenkins.io/war-stable/2.107.1/jenkins.war /opt/jenkins.war
RUN chmod 644 /opt/jenkins.war
ENV JENKINS_HOME /jenkins

# configure the container to run jenkins, mapping container port 8080 to that host port
ENTRYPOINT ["java", "-jar", "/opt/jenkins.war"]
EXPOSE 8080
RUN mkdir /jenkins/
RUN echo 2.107.1 > /jenkins/jenkins.install.UpgradeWizard.state
RUN echo 2.107.1 > /jenkins/jenkins.install.InstallUtil.lastExecVersion

#jenkin-cli installation
RUN cd /tmp && curl --insecure -OL http://192.168.99.100:8080/jnlpJars/jenkins-cli.jar 
ADD /tmp/jenkins-cli.jar /opt/jenkins/jenkins-cli.jar
RUN chmod 644 /opt/jenkins-cli.jar
WORKDIR /opt/jenkins
ENTRYPOINT ["java", "-jar", "jenkins-cli.jar", "-noCertificateCheck", "-noKeyAuth"]
CMD ["--help"]
这是一个错误:

Step 19/24 : RUN cd /tmp && curl --insecure -OL http://192.168.99.100:8080/jnlpJars/jenkins-cli.jar
 ---> Using cache
 ---> 9a6210009f84
Step 20/24 : ADD jenkins-cli.jar /opt/jenkins/jenkins-cli.jar
ADD failed: stat /mnt/sda1/var/lib/docker/tmp/docker-builder945232568/jenkins-cli.jar: no such file or directory[1] 
这个错误也导致了我的其他版本,如果我能找到最好的解决方案,我就能解决我的所有其他问题。 第二个问题是,我针对当前问题编写的脚本是否正确?如何修改

有人能帮我做这个吗。。?
提前感谢您

您忘记创建了/opt/jenkins文件夹

改变

添加/opt/jenkins.war

运行mkdir/opt/jenkins
添加/opt/jenkins/jenkins.war

如果您的cli工具可以从您的容器中通过一个简单的命令(如
cli-tool\u命令)使用,那么这应该可以工作:

docker run --rm -it {container_image_name} {cli_tool_command} {cli_tool_args}

更新:我将WORKDIR更改为/tmp,现在构建成功,但我无法运行。我的更新是错误的,还是有其他方法可以运行它?????你可以将我链接到任何相关视频或如何运行,因为我现在无法下载jenkins cli,在实施你的建议后,我如何运行该图像?docker跑了吗?或者有不同的方法吗?C:\Program Files\Docker Toolbox\Docker.exe:来自守护程序的错误响应:OCI运行时创建失败:容器\u linux。go:348:启动容器进程导致“exec:\“java\”:在$PATH中找不到可执行文件:未知。