Tag: 持续集成

Docker Hub Registery和Quay.io有什么区别?

我需要比较Docker Hub Registry和Quay.io. Slant社区为大多数人推荐Quay.io。 Quay.io排名第四,Docker Hub Registry排名第八。 哪一个更适合我?

我怎样才能运行docker – 由jenkins的shell脚本组成

我试图运行命令docker-compose up -d作为jenkins的构build步骤,在“执行shell”。 作业失败,并给我下面的控制台日志: docker-compose up –build -d无法在http + docker上连接到Docker守护进程:// localunixsocket – 它正在运行吗? 如果位于非标准位置,请使用DOCKER_HOST环境variables指定URL。 构build步骤'执行shell'标记构build为失败完成:失败 当我进入jenkins工作区(/ var / lib / jenkins / workspace / app /),并试图运行docker-compose时,起初我可以得到一个正常的版本。 现在我在控制台中得到错误: ERROR: Error processing tar file(archive/tar: invalid tar header): 当然,从控制台调用时,应用程序在主目录中生成并正常运行。 Docker正在主机上运行。 可以通过普通用户运行docker-compose。 我没有将jenkins用户添加到docker组。 我甚至尝试过从http://blog.csdn.net/qiyueqinglian/article/details/46559825的一些亚洲教程,这使得我在默认/ docker中更改了DOCKER_OPTS,但是在重新启动docker服务之后,它并没有在端口4243上运行,所以我没有理解翻译或它不工作在Ubuntu 16.04(主机系统)。 jenkins没有在容器中运行,它随意安装在主机上,没有虚拟机没有docker,没有任何东西。 我试图从主机(清除等)完全删除docker和jenkins,并重新安装,仍然是相同的错误。 有任何想法吗?

将Docker集成到现有的基于TFS的基础架构(而不是Web应用)中

我需要一些一般的build议。 在我们(大)公司,我们已经build立了基于MS TFS的testing和构build基础架构来构build和testing我们的产品。 要闻速览: 主要是C ++和C#代码 系统级软件 依靠大量预先configuration的构build代理 由TFS专业人士支持 对于一个新的Python项目(这不是一个Web应用程序),我们需要build立一个configuration项。 我的想法是捎带现有的统一基础架构,并利用Docker容器。 这里是我的想法:在Python项目的存储库的每一个签入启动一个专用的TFS构build 拉代码 构build一个Docker容器或图像 在里面运行testing 和…? 这就是问题:与外部世界进行互动的最佳方式是什么? 如果我们不打算build立一个networking应用程序,你会如何build议推动结果? 理想情况下,我只想保留失败的testing工件,甚至不保存所有这些容器。

在Docker上创build与Jenkins的Qt构build

我是jenkins的新手,我正在学习如何使用它。 我已经用Jenkins ver 2.60.1创build了一个容器,我已经将它configuration为使用Gitlab,并且已经安装了JDK Java SE SDK 8u131。 我试图为一个简单的Java项目创build一个构build,它似乎工作正常。 现在,我需要为Qt项目创build一个构build。 为了testing(并学习)它是如何工作的,我创build了以下Qttesting项目: Project01 App01 mathLib TestMathLib .pro文件如下所示: Project01.pro TEMPLATE = subdirs SUBDIRS += \ App01 \ mathLib \ TestMathLib App01.pro QT += core QT -= gui CONFIG += c++11 TARGET = App01 CONFIG += console CONFIG -= app_bundle TEMPLATE = app SOURCES += main.cpp DEFINES += […]

Gitlab CI服务端口如何暴露?

我有一个.gitlab-ci.yml文件: integration_test: services: – name: registry.gitlab.com/group/project/testmailserver:1.1 alias: "mail.email" stage: test script: – ./gradlew -g /cache/.gradle –stacktrace –info integrationTest 该服务是一个完整的堆栈邮件服务器,基于这个: tvial/docker-mailserver:latest 。 本地与我的docker-composeconfiguration我能够运行它并连接到它。 version: '2' services: mail: image: registry.gitlab.com/group/project/testmailserver:1.1 hostname: mail domainname: localhost ports: – "25:25" – "143:143" – "587:587" – "993:993" environment: – ONE_DIR=1 – DMS_DEBUG=0 – MAIL_USER=invoicereader – MAIL_PASS=invoicereader cap_add: – NET_ADMIN 如果我使用docker-compose up运行它,并通过端口993上的IMAP连接到它,它工作正常。 […]

如何运行无头selenium脚本,独立于主机和浏览器

我想在一个CI作业上运行一个以Java为基础的无脚本selenium“脚本”,与主机(和浏览器)无关。 我可以构build一个jar并在terminal上运行“脚本”,我只需要非常小心地指向和configuration正确的驱动程序,具体取决于我运行该脚本的主机的操作系统和浏览器。 但是,在CI主机上,我不一定会控制主机和浏览器,如果它们可用的话。 所以我想让脚本的执行独立于脚本运行的主机和浏览器。 它可以运行在Jenkins,Travis,Gitlab CI等的奴隶实例上。 以前有几个问题是针对给定的主机和浏览器组合的。 我可以把主机拿出来,让浏览器可用,例如,通过一个容器。 如果浏览器可用作容器图像,则可以针对不同的浏览器运行脚本,每个浏览器都有自己的图像。 而且我已经准备好适合这些浏览器实例的驱动程序了。 这是可行的,我可以做到这一点最简单的方法是什么?

Java Maven项目Docker集成testing

我们有一个很大的多模块maven项目,使用货物来启动一个tomcat和一些战争,一个插入sql数据到postgres数据库的插件,然后使用黄瓜我们运行集成testing套装。 我正在读关于Docker的很多内容,我可以玩弄它。 所以在这里我的问题, Docker可以取代使用货物的集成testing吗? 有什么好处? 与使用货物的部署相比,性能如何? 一个用postgres和tomcat映像启动容器的套件是否可以改善构build时间? 希望有人能帮助我,因为我很喜欢docker工人!

容器化(Docker)将取代持续集成?

或者换句话说, “图像”是否击败了“脚本”? 我是Docker故事的新手,不幸的是,我目前正在CI尚未成为现实的环境中工作; -P 但是,我对“形象”跳动“脚本”有以下经验: 如果我想为我的一些同事分发一个(桌面)应用程序,即使只是为了探索/培训的目的,我也要经历一个漫长而昂贵的过程,产生一个安装在工作站上的软件安装脚本 。 最终的结果是, 脚本需要相当长的一段时间来执行,并可能由于狗的上下文变化而失败。 所以,我没有那样做。 相反,我要求testingAWS和Google Cloud Platform ;-)然后,我安装了一个虚拟机,包含我想要发布的软件,以及一个无客户端(HTML5)远程桌面网关(例如Guacamole ),我已经它的形象 。 那么,当一个同事需要尝试的时候,我可以根据这个镜像创build一个新的VM实例,完成! 创buildVM需要花费时间(<30秒),没有安装脚本,没有部署! “形象”赢得了“剧本”。 现在,我正在想象在我们的DevOps团队中做同样的“捷径”。 开发人员可能会提供一个随时可以运行的容器,而不是一个随时可以build立的源代码。 没有? 而且,为什么不进一步……为什么不用一小群选定的用户来testing(系统地)在生产中? 如果我有可以并行运行的版本容器 – 稳定版本和全新版本的容器 – 如果我只能将用户的有限(select)子集“redirect到”新的版本…我是否仍然需要内部testing阶段,这 – 不 – 不真的工作? 这有道理吗? 或者,我错过了什么?

Jenkins的Dockerizing构build – 作为容器的奴隶或作为容器构build?

我想知道使用Docker在Jenkins CI / CD基础架构中集装箱化的最佳策略。 从我看到我有2个选项: (1)使用Docker插件,在Docker主机上使用按需configuration的临时从属: https : //wiki.jenkins-ci.org/display/JENKINS/Docker+Plugin一旦构build完成,从属处置被处置。 因此,只有一个构build可以在单个从站上运行。 (2)使用CloudBees Docker自定义构build环境插件在Docker容器中运行构build的静态从站(例如VM): https : //wiki.jenkins-ci.org/display/JENKINS/CloudBees+Docker+Custom+Build+Environment +插件因此,多个(独立的)构build可以在单个从站上运行。 一种方法的主要优点和缺点是什么? 何时和为什么我应该select一个在另一个之上? 这对我来说不是显而易见的。 我怀疑构build体的重量更轻,因此对于一个CI / CD基础结构来说,编排一个大型的端到端stream水线, 其中有许多作业运行(2)将更具可扩展性 – 每个Jenkins从节点在主节点上至less有2个线程。 编辑

添加Android依赖关系到Docker构build镜像 – Bitbucketpipe道(CI)

在bitbucketpipe道构build期间,我收到了这个错误。 我错过了firebase jar文件。 构build失败错误: > Could not resolve all dependencies for configuration ':app:_debugApkCopy'. > Could not find com.google.firebase:firebase-core:10.0.0. Searched in the following locations: file:/usr/local/android-sdk/extras/android/m2repository/com/google/firebase/firebase-core/10.0.0/firebase-core-10.0.0.pom file:/usr/local/android-sdk/extras/android/m2repository/com/google/firebase/firebase-core/10.0.0/firebase-core-10.0.0.jar file:/opt/atlassian/pipelines/agent/build/sdk-manager/com/google/firebase/firebase-core/10.0.0/firebase-core-10.0.0.jar Required by: project :app > Could not find com.google.firebase:firebase-ads:10.0.0. Searched in the following locations: file:/usr/local/android-sdk/extras/android/m2repository/com/google/firebase/firebase-ads/10.0.0/firebase-ads-10.0.0.pom file:/usr/local/android-sdk/extras/android/m2repository/com/google/firebase/firebase-ads/10.0.0/firebase-ads-10.0.0.jar file:/opt/atlassian/pipelines/agent/build/sdk-manager/com/google/firebase/firebase-ads/10.0.0/firebase-ads-10.0.0.jar Required by: project :app > Could not find com.google.firebase:firebase-messaging:10.0.0. Searched in the […]