Tag: jenkins

在Jenkinspipe道的一个步骤中使用docker

我们有一个jenkins大师和一些奴隶。 全部在自己的服务器上。 现在我们在从站上安装了Docker。 我们尝试创build一个非常基本的pipe道,这将在容器中执行一个步骤。 我看到代理是泊坞窗容器的configuration。 但是我们想要这样的东西: pipeline { agent any triggers { pollSCM pipelineParams.polling } options { buildDiscarder(logRotator(numToKeepStr: '3')) } stages { stage('Clone') { steps { //clone repo scm.. } } stage ('npm') { steps { script { sh 'npm …' } } stage ('docker') { steps { //start docker container and mount project in […]

dockerbuild设去应用程序私人github

我试图从我的应用程序构build一个docker图像。 github回购是私人的。 我有一点新的去(和docker),但我认为通过glidepipe理的/vendor文件应该绕过这个问题? 另外为什么docker工人必须从github获得一切? 一切都在当地提供。 命令: docker build -t testimage . Dockerfile FROM golang:1.8-onbuild 它在这一步失败 exec go get -v -d ……. fatal: could not read Username for 'https://github.com': No such device or address 我怎样才能解决这个问题? 谢谢

如何识别运行jenkins容器时使用的docker host ip

我有在Windows操作系统上安装docker机,并已从docker集线器jenkins图像。 然后我运行下面的命令: docker volume created myjenkins-data docker run -p 8080:8080 -p 50000:50000 -v myjenkins-data:/var/jenkins_home jenkins 我在日志中收到了Jenkins的pipe理员密钥。 我已经确认我的容器仍在运行状态: $ docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 2854c7d83879 jenkins "/bin/tini — /usr…" About a minute ago Up About a minute 0.0.0.0:8080->8080/tcp, 0.0.0.0:50000->50000/tcp quizzical_cray 现在,我需要login到8080端口来查看Jenkinsnetworking应用程序。 但是我不知道使用哪个主机ip。 我使用“docker-machine ip”命令识别了docker host ip,得到了ip地址:192.168.99.100。 但使用192.168.99.100:8080没有提出jenkins应用程序。 我也尝试使用docker检查来获取容器的IP,但端口8080也不能在这些IPS上工作。 我使用哪个IP地址查看在容器中运行的Jenkins应用程序?

尝试连接到Unix上的Docker守护程序套接字时拒绝了权限:///var/run/docker.sock

我是docker工人。 我只是试图在我的本地机器(Ubuntu 16.04)中与Jenkins一起使用docker。 我使用下面的pipe道脚本configuration了一个新的作业。 node { stage('Build') { docker.image('maven:3.3.3').inside { sh 'mvn –version' } } } 但是,它会失败,下面的错误。 谁能帮忙?

如何运行Docker来监听特定的端口以与Jenkins集成

我正在尝试使用Jenkins Docker plugin 。 不幸的是,我不能在RHEL上运行Docker来监听特定的端口。 我知道我必须补充: DOCKER_OPTS="-H tcp://0.0.0.0:4243 -H unix:///var/run/docker.sock" 但在我的RHEL安装中找不到/etc/init/docker.conf文件。 那么哪个文件要修改?

jenkins从docker奴隶获得testing结果

我们有一个jenkins设置与docker奴隶,但不是所有的文物都可以从jenkins。 我们的设置: Jenkins Master在单个虚拟机上运行 多个Docker主机安装在不同的虚拟机上 我们正在使用php模板 Docker容器被configuration为运行我们项目所需的所有testing。 当正在构build项目时,docker容器在其中一个Docker主机上启动,testing运行,phing结果被复制回主机,docker容器被提交到一个映像,并且正在运行的容器被销毁。 我们正在使用“复制到从属插件”将我们的构build目录从从属复制到主控,所有所需的工件都在Jenkins主控上。 问题是,当构build完成,我们无法查看工作区文件(我们复制到副本插件复制)我们也无法链接到已经复制到主graphics文件。 <img type="image/svg+xml" height="300" src="ws/build/pdepend/overview-pyramid.svg" width="500"></img> <img type="image/svg+xml" height="300" src="ws/build/pdepend/dependencies.svg" width="500"></img> 但是,在Docker容器仍在运行时,我们可以在构build过程中看到这些图像。 我们缺less什么?

docker centos:6.6 image“/ bin / sh:java:command not found”安装了java

我有一个来自centos的 docker容器,我为jenkins奴隶安装了maven和jdk1.7(以减lessjenkins安装jdk和maven的编译时间) 当我启动一个容器 docker运行-t -i jenkv1 / bin / bash [root @ 095586d24ad9 /]#java -version java版本“1.7.0_51” Java(TM)SE运行时环境(build 1.7.0_51-b13) Java HotSpot(TM)64位服务器虚拟机(构build24.51-b03,混合模式) 我看到Java,但如果它开始这样: docker运行-t -i jenkv1 / bin / sh java “/ bin / sh:未findjava:命令”

在jenkins版本中包含.env文件的最佳做法是什么?

这是我的情况:我有一个Django的应用程序,这取决于configuration值存储在一个.env文件。 这个.env文件与源代码pipe理是分开的,以保持敏感信息的私密性。 这Django应用程序部署在一个docker容器,我有jenkins设置重build容器,每当检查到我们的Git仓库的变化。 构build将失败,除非在构build环境中存在.env文件。 包含该文件的最佳方式是什么? 我现在有jenkins设置执行一个shell文件写入到生成环境的命令,但我不禁觉得这是次优的,安全明智的。 什么是更好的方法来做到这一点?

用jenkins构builddockerfile的docker镜像

我昨天被阻止,需要一些帮助。 我试图使用jenkins docker-plugin和jenkins docker-plugin docker-plugin-step从dockerfilebuild立docker镜像。 但是,当我尝试运行jenkins的工作,它给了我以下例外: Docker Build Docker Build : build with tag jdubois/jhipster-docker:Gateway_Jenkins_V1 at path /home/javateam/DockerfileGateway ERROR: Build step failed with exception java.lang.NullPointerException: config was not specified at shaded.com.google.common.base.Preconditions.checkNotNull(Preconditions.java:226) at com.github.dockerjava.core.DockerClientImpl.<init>(DockerClientImpl.java:36) at com.github.dockerjava.core.DockerClientImpl.getInstance(DockerClientImpl.java:52) at com.github.dockerjava.core.DockerClientBuilder.getInstance(DockerClientBuilder.java:29) at com.nirima.jenkins.plugins.docker.builder.DockerBuilderPublisher$Run$1.invoke(DockerBuilderPublisher.java:144) at com.nirima.jenkins.plugins.docker.builder.DockerBuilderPublisher$Run$1.invoke(DockerBuilderPublisher.java:139) at hudson.FilePath.act(FilePath.java:991) at hudson.FilePath.act(FilePath.java:969) at com.nirima.jenkins.plugins.docker.builder.DockerBuilderPublisher$Run.buildImage(DockerBuilderPublisher.java:139) at com.nirima.jenkins.plugins.docker.builder.DockerBuilderPublisher$Run.run(DockerBuilderPublisher.java:89) at com.nirima.jenkins.plugins.docker.builder.DockerBuilderPublisher.perform(DockerBuilderPublisher.java:180) at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20) at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:779) […]

我想获得Jenkins部署的工件版本

我将maven deploy作为一个步骤运行(使用maven构build步骤),并使用时间戳部署工件。 我现在要创build一个具有已部署工件的泊坞窗图像,并且使用工件时间戳标记泊坞窗图像。 这是一个非常普遍的情况,即docker镜像的标签必须与artifact包含的镜像相同。 我已经阅读了几个post Jenkins maven将jar部署到nexus – 工件命名 jenkins – 我如何将参数从上游传递到下游 Sonatype Nexus REST Api获取最新版本 其中[3]给我的服务器的快照版本列表在一个XML中,这是必须parsing。 由于我在jenkins作业中推送了工件,是否有可能在构build中知道完整的工件名称,而不是从服务器获取它。 是否有API /任何其他方式,它可以给出最新的工件,而不是工件XML的名称