Tag: jenkins

在Docker容器中的Jenkins中configurationMSBuildpath

我的jenkins容器在docker里面。 由于Docker是基于Linux的,因此不接受像“C:\ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ MsBuild.exe”这样的path。 Docker容器中jenkins的msbuildpath是什么? 我得到错误,如“致命:无法使用这种操作系统上的这个插件”

如何在数据库的DEV,QA,PROD环境中部署数据库的连续变化?

(我想知道什么是数据库更改的最佳部署实践,假设例如我们有一个node.js服务器,如果有任何变化,我将部署它们由开发人员在开发中,如果每一件事情顺利在DEV我部署到质量保证和PROD,部署意味着为这些更改创build新的映像,并在jenkins和docker的帮助下删除之前的node.js映像作为容器,我们如何做到这一点? 我在Docker环境中需要数据库的环境中工作。 我没有得到的是假设。 我第一次为postgres设置了Docker容器,我已经将所有表添加到了模式和所有函数中。 我想知道如果假设我必须在数据库中做一些更改。 我有DEV,QA,PROD所以首先变化进入DEV环境,如果每件事情都很好,那么就去QA然后PROD。 那么部署Docker变更的方法是什么呢? 应该是这样的。 什么时候有变化。 我将为postgres和所有新的更改手动创build新的图像,或者每次我必须在docker脚本中添加更改以进行更改。 (我不关心数据量或主机挂载的数据持久性问题,我担心新的数据库更改应该如何转到DEV然后是QA,然后是PROD) 我们如何继续整合/继续部署postgres数据库? 对于任何语言更改 (如node.js中的代码更改),我每次创build新的泊坞窗图像并删除以前的图像。 但是对于数据库更改 ,我怎么做继续集成/继续部署postgres数据库,因为如果我删除docker容器postgres我必须创build整个结构再次为数据库中的单行更改。 任何帮助将赞赏? 这个员工有任何真实的生活经验吗?

以非root用户身份启动WebFS服务

我目前正在jenkinspipe道上build立我的项目,这是一个docker的形象。 每当我想build立我的项目,我可以从我的图像运行一个容器,并build立我的项目。 要访问必要的数据,比如我的工具链,我使用一个运行在端口80上的文件服务器(webfs)。但是服务器不能自动启动,我需要以root身份启动它。 因此,我将命令“service WebFS restart”添加到了bash.bashrc中,但用户jenkins没有启动服务器的权限。 […]重新启动httpd守护进程:webfsdbind:权限被拒绝 你有什么想法,当我运行我的jenkins容器时,如何自动启动我的文件服务器? 感谢和问候, Zargi

docker中的apache反向代理

我目前正试图学习使用docker,我遇到了反向代理和Apache的一个小问题。 所以我有一个运行jenkins / jenkins的容器:最新的端口8080,我想用apache将它映射到端口80上的/ jenkins。 这是我目前的代理configuration: ProxyPass /jenkins http://jenkins:8080/jenkins nocanon ProxyPassReverse /jenkins http://jenkins:8080/jenkins ProxyRequests Off AllowEncodedSlashes NoDecode 和这个它redirect到jenkins容器的第一个请求,但jenkinsredirect到/login导致404。我明白为什么会发生这种情况,但有没有解决这个问题,而不修改jenkins形象通过设置一个前缀? 为什么我不想添加前缀的主要原因是因为它看起来像很多工作,特别是如果我需要这样做的所有服务,我想运行在docker……这似乎是非常不切实际的。

在使用docker.sock时,在Kubernetes上托pipeJenkins

我试图在GKE上托pipe一个Jenkins图像来运行构build。 大多数情况下,我已经按照Google的教程在Kubernetes中设置了Jenkins 。 我有一个相当基本的设置与一个主节点运行的构build。 我也希望能够在Jenkins环境中使用Docker,所以我进入了Jenkins的Global Tools Configuration并添加了一个Docker实例。 我另外在我的部署文件中映射了docker.sock以绕过“无法连接到unix上的Docker守护进程:///var/run/docker.sock。docker守护进程是否正在运行? 问题。 我目前的部署看起来像这样: apiVersion: extensions/v1beta1 kind: Deployment metadata: name: jenkins namespace: jenkins spec: replicas: 1 template: metadata: labels: app: master spec: containers: – name: master image: jenkins/jenkins:2.95 ports: – containerPort: 8080 – containerPort: 50000 readinessProbe: httpGet: path: /login port: 8080 periodSeconds: 10 timeoutSeconds: 5 successThreshold: 2 failureThreshold: 5 […]

Jenkins继续以root身份运行slave操作

我有一个用于DJango构build的Jenkins从节点。 部分程序涉及从Git获取最新的Django代码库,然后使用它进行构build。 问题是,当jenkins在奴隶机器上运行时,它总是以“root”身份运行。 问题类似于这个: jenkins作为根而不是jenkins运行,但不完全是这样的。 它以root身份从Git中检出存储库 如果我在工作区目录上执行ls -lart ,那么所有的文件都归属于这个目录 user: root group : root 它以root身份(在从属机器上)运行一切 – 尽pipe我已经configuration它以特定用户身份login。 请参阅下面定义的从节点的图片。 在作业中(见图),我只使用从节点。 为什么这样做? 某种caching正在进行吗? 如果是这样,我如何删除caching? 我只提到caching,因为当我们查看一个Jenkins运行的日志文件时,它看起来好像正在访问某种types的“root”caching, [… snip …] Downloading idna-2.6-py2.py3-none-any.whl (56kB) Collecting decorator (from ratelim->geocoder==1.33.0->-r requirements.txt (line 9)) Downloading decorator-4.1.2-py2.py3-none-any.whl Building wheels for collected packages: django-phonenumber-field, googlemaps, olefile, pycparser, future Running setup.py bdist_wheel for django-phonenumber-field: started Running […]

通过ssh使用SQL脚本失败,但不能直接在主机上启动

我configuration了一个Jenkins Job,我的Pipeline如下所示: stage ('Preparing SQL Database'){ steps{ //Starting MYSQL Image sh '(sudo sshpass -p "PASSWORD" ssh -o StrictHostKeyChecking=no user@$host "sudo docker run –name nameofthecontainer -p 13306:3306 -d mysql:mysql")' sh '(sudo sshpass -p "PASSWORD" ssh -o StrictHostKeyChecking=no user@host "/opt/docker/dockerdeployment/databasescript.sh")' } 我的databasescript.sh看起来像这样(只需导入一个SQL-DUMP): sudo docker exec -i nameofthecontainer /usr/bin/mysql -u $MYSQLUSER -pPassword $MYSQLOPTIONS $MYSQLDB -e "DROP DATABASE IF […]

jenkins / jenkins中的ssh身份validation:在克隆过程中,docker镜像挂起

我正在运行一个创buildjenkins/jenkins:lts的容器jenkins/jenkins:lts在64位Ubuntu上的docker镜像16.04.1 LTS和git轮询和克隆操作在我使用带密码的ssh密钥进行ssh身份validation时挂起 2017年12月22日下午1时47分55秒开始 轮询SCM上的更改 使用策略:默认 git rev-parse –is-inside-work-tree#timeout = 10 从远程Git存储库获取更改 git config remote.origin.url git@github.com:username / repo_path.git#timeout = 10 从git@github.com获取上游变更:username / repo_path.git git –version#timeout = 10 使用GIT_SSH设置凭据test-key git fetch –tags –progress git@github.com:username / repo_path.git + refs / heads / :refs / remotes / origin / #timeout = 3 这是轮询挂起时的ps输出 jenkins 2405 0.0 0.0 15604 1080 […]

开发与jenkins&portainer容器运行ci服务器dockerconfiguration运行导致CPU软locking

一些背景故事告诉你我想要完成的事情(也许我采取了错误的做法,有人有一个更好的主意来解决我的问题): 我正在尝试构build一个CI服务器,用于自动化构build,testing和部署我的一些客户的个人项目或项目。 服务器应该运行一个无头的Ubuntu Linux服务器安装,docker,docker-compose,Jenkins(在Docker容器中),Portainer(在Docker容器中)。 Jenkins将构build项目,运行testing并按configuration部署它们。 硬件: RYZEN 7 1700 微星B350M PRO-VDH,Sockel AM4,DDR4,HDMI,DVI,D-Sub 1x M.2和6x USB 3.1 Gen1 MATX 2 x Ballistix Sport LT BLS16G4D240FSC 16GB单DDR4 2400 MT / s(PC4-19200)DIMM 288针内存 OS: 经销商ID:Ubuntu 说明:Ubuntu 17.04 发行:17.04 代号:zesty 软件: Docker版本17.09.1-ce,build 19e2cf6 docker-compose版本1.16.1,build 6d1ac21 jenkins的configuration,我想通过试验和错误的卷挂载。 也许我犯了一些可怕的错误: cat docker-compose.yml version: 2.1 services: jenkins_servo: build: ./jenkins_servo restart: always volumes: – […]

SonarQube扫描仪不使用全局或特定代理设置

我们在Jenkinspipe道中使用声纳扫描仪来扫描JNLP从站的代码。 Sonarscanner和SonarQube都在Openshift的Docker容器中运行。 我们的SonarQube服务器在没有authentication的代理之后。 声纳扫描仪不读取我们通过-D http.ProxyHost在启动命令或configuration文件中提交给它的任何代理信息。 代理服务器后面没有办法访问我们的Sonarqube服务器。 你能帮我们弄清楚该怎么办? 我试过所有的方法来解决它,但没有任何工作: 传递-D https.ProxyHost -D https.ProxyPort(不含http://标题) 把它们放入sonar-scanner.properties 在环境variables中传递代理值HTTP_PROXY,HTTPS_PROXY,JAVA_OPTS …对SonarQube服务器执行curl工作 – >防火墙正常,连接正常。 我无法在Github上find有关此项目的任何问题跟踪器,而且Jira跟踪器不能提交新问题。 有没有人遇到同样的问题? 还有一个与此有关的问题,但没有给出答案: SonarQube扫描仪无法连接到服务器 谢谢, Lain92