Tag: jenkins

将Maven和Ant添加到Jenkins Docker容器的正确方法是什么?

我下载了jenkins / jenkins:来自docker hub的映像,我在Ubuntu 16.04上运行起来。 该图像似乎不包括Ant或Maven,也可能想要针对不同版本的jdk进行构build。 我想知道什么是正确的方法来解决这个问题 – 我可以在容器上运行bash并运行apt-get或yum来安装我的构build所需的额外内容,或者有更好的方法吗?

使用厨师创builddocker集装箱

我有一个dockerfile来安装jenkins和它的依赖在容器中。 任何人都可以build议如何构build一个dockerfile来创build一个docker镜像并创build它的容器? 我已经检查了这个链接https://docs.docker.com/engine/admin/chef/#requirements但是这不是什么好事,因为他们使用docker中心的docker图像。

stdin不是Jenkins的tty

我有我的笔记本电脑上运行Windows 10本地安装Jenkins。我旋转了一个运行SQL Server的Linux容器,但是当我尝试运行以下: winpty docker exec -it SQLLinuxnull sudo /opt/mssql-tools/bin/sqlcmd -S localhost -U sa -PP@ssword1 -Q 'EXEC sp_configure '\''clr enabled'\'', 1;' 我得到: stdin is not a tty 当我从PowerShell会话运行docker exec命令时,它完成没有任何问题。 Trawling这个网站提出了一个答案,提示这可能与Linux容器中需要执行sudo的任何帐户有关,而且我应该修改/etc/sudoers文件,问题是我没有根据uname -a有一个/etc/sudoers文件uname -a这是容器基于Linux的版本(不是它的基础是Linux映像中的官方微软SQL服务器): # uname -a Linux f9509a952eae 4.9.49-moby #1 SMP Wed Sep 27 00:36:29 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux 有人可以确认这是一个sudoers相关的问题。

将安全漏洞添加到/var/run/docker.sock 666权限

我无法通过jenkins构build我的dockerfile,直到我将666个权限添加到/var/run/docker.sock。 现在,我知道这比将“jenkins”用户添加到“sudoers”列表更安全。 然而, 还有更好的办法吗? 这个额外的许cocoa以用于我的缺点是什么?

存储/不存储将数据从构build容器传输到其他节点(在jenkins中)

在我的CI基础设施中,我有一个jenkins大师作为容器和2个奴隶(vms)运行。 我尝试在一个节点上的Docker容器中运行一个构build,所以在构build过程中,我隐藏了我的目标文件夹,稍后在其他节点上使用它。 在作业的日志中,我可以看到该文件夹​​成功隐藏。 当构build完成后,容器被自动销毁,然后在下一步我取消该文件夹以获得单独的节点中的另一个阶段,但没有发生..似乎没有任何东西。 PLZ如何将我的目标从容器转移到另一个节点,甚至是主? 这是我的pipe道代码: node('docker') { stage('Checkout Code') { checkout scm } stage('Build') { withMaven( jdk: 'jdk_8', maven: 'maven 3') { mvn 'clean install' stash name: 'war', includes: 'x.war' } } node('master') { stage('test') { withMaven( jdk: 'jdk_8', maven: 'maven 3') { unstash : 'war' sh 'mvn clean test' } } } }

在jenkins中configurationDocker主机

我已经安装了Jenkins版本。 Ubuntu 17.10中的2.73.3同样的机器也有Docker版本17.09.0-ce。 我还在/ etc / default / docker文件中添加了以下行:DOCKER_OPTS =“docker -H tcp://127.0.0.1:2375 -H unix:///var/run/docker.sock” cat /etc/default/docker # Docker Upstart and SysVinit configuration file # # THIS FILE DOES NOT APPLY TO SYSTEMD # # Please see the documentation for "systemd drop-ins": # https://docs.docker.com/engine/admin/systemd/ # # Customize location of Docker binary (especially for development testing). #DOCKERD="/usr/local/bin/dockerd" […]

无法公开端口从本地主机访问web服务器

我刚刚开始学习docker,并卡在这里。 所以,我首先尝试运行jenkins映像并映射端口,以便从浏览器访问它,但是我没有成功。 当我在指定的端口从浏览器打开本地主机时,我什么也得不到。 同样是与tomcat。 我运行它是这样的: docker run -it –rm -p 8888:8080 tomcat和我得到输出在cmd提示像一切设置像它应该,但没有出现在浏览器中。 在docker ps我可以看到tomcat容器正在运行在8888端口上。

将jenkins与docker-compose.yml文件集成为laravel项目

在我的docker-compose.yml文件下面: version: '2' services: webserver: build: . ports: – '85:80' volumes: – ./:/var/www/html – ./apache.conf:/etc/apache2/sites-available/000-default.conf depends_on: – db db: image: mysql:5.7 volumes: – "./.data/db:/var/lib/mysql" restart: always environment: MYSQL_ROOT_PASSWORD: root MYSQL_DATABASE: laravel_db MYSQL_USER: laravel MYSQL_PASSWORD: laravel ports: – 3307:3306 phpmyadmin: image: nazarpc/phpmyadmin environment: MYSQL_ROOT_PASSWORD: root ports: – '88:80' depends_on: – db 我有PHP项目,我已经安排了所有的图像像Apache,MySQL和phpmyadmin运行我的项目与docker。 其实,我想在我的docker-compose.yml文件里编排jenkins,我没有find任何办法做到这一点 有一个人可以帮助我。

将运行在独立ec2主机上的docker节点连接到Jenkins

我有2个EC2实例。 一个运行Jenkins,另一个运行Docker。 我正在尝试连接运行在Docker主机上的容器作为节点的Jenkins。 要启动Docker主机上的容器,我运行以下命令: sudo dockerd -H tcp://127.0.0.1:2376 -H unix:///var/run/docker.sock 在云端设置(在jenkins / configure下) Docker主机URI: tcp://IP-ADDRESS-OF-EC2-DOCKER-HOST:2376 Docker主机名或IP地址: IP-ADDRESS-OF-EC2-DOCKER-HOST Dockerfile: FROM ubuntu:16.04 RUN apt-get update RUN apt-get install openjdk-8-jdk -y RUN mkdir -p /home/jenkins EXPOSE 22 ec2 Docker主机安全开放传入端口:2375,2376,4243,22 当我点击“testing连接”button时,我得到: Connection refused: /IP-ADDRESS-OF-EC2-DOCKER-HOST:2376 java.net.ConnectException: Connection refused Caused: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: /IP-ADDRESS-OF-EC2-DOCKER-HOST:2376 at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:717) at io.netty.channel.socket.nio.NioSocketChannel.doFinishConnect(NioSocketChannel.java:352) […]

jenkinsLTSdocker图片卡在jenkins2.60.3

我有一个图像“x /jenkins基”使用 FROM jenkins/jenkins:lts 这被另一个人使用 FROM x/jenkins-base 现在,尽pipe如此 docker pull jenkins/jenkins:lts 图像似乎卡在jenkins2.60.3。 GitHub上的jenkins / jenkins Dockerfile的确还是参考了2.60.3。 那么我怎样才能更新到最新的LTS(今天是2.89.1)呢?