Tag: 持续集成

SonarQube,Jenkins和GitLab是否可以集成到Docker中?

目前,我在一个质量过程中工作,以确保代码是可以接受的。 为此,我整合了Jenkins,SonarQube和GitLab,它们运行在不同的服务器上(实际上它们在不同的docker容器中)。 这个想法是每次检查SonarQube时,代码是否被推入GitLab,并阻止提交,合并等,SonarQube是否没有通过。 我已经把Jenkins和SonarQube整合在一起了,但Jenkins检查他的工作区内的代码,所以想象一下,他的笔记本电脑中的开发人员需要推动他的改变。 我的概念性问题很简单:为了做到这一点,可以整合这些技术吗? 而且,如果问题是肯定的,哪些步骤是必要的? PD:我不需要看代码,configuration文件等等。 我只需要像这样的东西: configurationSonarQube与Jenkins一起工作 做一个脚本,以便在该文件夹中复制该文件, …

docker在生产

如何在docker生产中创build工作stream程。 现在它的工作: 开发人员提交更改为VCS CI使用应用程序构buildDocker容器 用最新的标签推入registry docker-compose.yaml放在服务器上 拉出新的图像并重新运行 但是如果我们只有一个registry,任何开发人员都可能会崩溃生产 如何创build工作过程来解决这个问题。

从docker映像运行maven命令

Iam在gitlab runner中构builddocker image因此,Iam使用docker:最新映像,因为我需要将映像推送到registry,但是在构build映像之前,我需要打包我的java项目。 如何使用mavenbuild立项目的docker图像? 现在,gitlab亚军返回错误 $ docker run -it –rm -v "$(pwd)":/opt/maven -w /opt/maven maven:3.3.9-jdk-8 mvn clean install the input device is not a TTY ERROR: Job failed: exit code 1

如何使Docker在持续集成中不使用磁盘空间

我正在和docker玩,并计划在GitLab CI环境中使用它来将当前的项目状态打包到容器,并提供运行的实例来做评论。 我使用了一个非常简单的Dockerfile,如下所示: FROM php:7.0-apache RUN sed -i 's!/var/www/html!/var/www/html/public!g' /etc/apache2/sites-available/000-default.conf COPY . /var/www/html/ 现在,只要我一个新的(空)文件( touch foobar )到当前目录并调用 docker build -t test2 –rm . 再次,一个完整的新图层被创build,包含所有的代码。 如果我不创build一个新的文件,旧的图像似乎很好地重用。 我有一个使用下面的Dockerfile的中途解决scheme: FROM test2:latest RUN sed -i 's!/var/www/html!/var/www/html/public!g' /etc/apache2/sites-available/000-default.conf COPY。 在/ var / www / html等/ 深入挖掘这个问题 ,并将存储驱动程序切换到overlay ,这似乎是我想要的 – 只有几个字节被添加为一个新的层。 但是现在我想知道,我怎样才能把它集成到我的CI设置中 – 基本上我需要两个不同的Docker文件 – 取决于图像是否已经存在,或者不存在。 有没有更好的解决scheme呢?

Docker在pipe道中运行说:`docker:来自守护进程的错误响应:授权被拒绝

我正在尝试设置一个bitbucketpipe道,并使用docker run语句。 但是构build失败,出现以下错误消息: docker: Error response from daemon: authorization denied 这是pipe道configuration pipelines: default: – step: script: # build the Docker image (this will use the Dockerfile in the root of the repo) – docker build -t solc . # Test the solidity files in project – docker run solc 问题:我没有进行任何需要授权的操作。 为什么是错误信息谈到授权。

为什么要在Centos上使用Docker.io来修补Linux内核

我试图将我的应用程序转移到像使用Docker.io更正式的部署方法,但是当我检查它的工作原理时,它依赖于修补的Linux内核。 所以我想知道这是什么补丁? 如果我把整个架构师移到这个补丁的内核中,会带来什么样的不确定性?

devops – 我应该创build一个专门的'devops'GitHub用户读取权限?

我们正在考虑在GitHub中创build一个专门的devops用户,它拥有对我们项目的只读访问权限,并且可以在各种Docker容器中进行configuration,以便git pull项目代码devops到分段和生产环境中。 在我这样做之前,我想我会伸出手,询问这是否是最好的方法,或者是否有更好的方法从GitHub安全地提取代码作为自动化CI和部署过程的一部分。

在circleCI上运行docker-containertesting

我为我的开源代码创build了一些集成testing,我正在寻找一个可公开访问的CI服务来承载它们。 由于Travis-CI对我所有的容器都有小配额,我想我会用CircleCI。 这是我的cirle.yml : machine: services: – docker dependencies: override: – pip install docker-compose test: override: – cd integration-tests && docker-compose run –rm runner 然而,运行后,我得到错误消息“客户端和服务器没有相同的版本(客户端:1.18,服务器:1.16)”我的问题是什么?

docker工人build立官方jenkins容器内

我在docker上运行官方Jenkins容器。 我需要build立docker形象作为成功构build后的行动,但jenkins容器没有docker二进制。 我看到几个选项,首先是从官方图像派生我自己的jenkins容器与docker二进制可用。 第二个select是使用专门的Jenkins从站与docker和其他必要的运行时间可用。 第三个select是提供Jenkins服务器。 我想在容器上运行一切,因为它干净,简单,易于重复。 你怎么解决这个问题? 从长远来看哪个更好的解决scheme?为什么? 我的最高优先级是能够通过单一的指令来configuration和引导整个CI基础设施。 而且,构build的docker容器将被推送到registry等,所以组件之间的连接应该是最佳的,最小的复杂度或手动configuration。

使用Jenkins部署对Docker容器的更改

Docker新手在这里。 我已经设置和docker容器运行一个简单的节点JS应用程序。 假设我有一个新版本的应用程序(例如1.1 ),必须由Jenkins CI部署。 在这里,我对Jenkins CI应该做些什么感到有点失落: 应该closures并删除旧的容器( 1.0 ),并启动一个新的实例1.1 ? 要么 应该进入当前正在运行的容器,只更新代码?