资讯专栏INFORMATION COLUMN

如何在Docker里正确集成Jenkins和Phabricator

smallStone / 2582人阅读

摘要:多带带安装并不复杂,用安装更加简单,甚至将与集成也不难,但要把一个运行在里的和相集成,事情就变得不那么容易。我把所有走过的坑全部隐藏,直接告诉你最正确的步骤。至此,你已经把官方提供的改得面目全非,才算正确地在里安装好了和。

多带带安装Jenkins并不复杂,用Docker安装Jenkins更加简单,甚至将JenkinsPhabricator集成也不难,但要把一个运行在Docker里的JenkinsPhabricator相集成,事情就变得不那么容易。

我把所有走过的坑全部隐藏,直接告诉你最正确的步骤。

通过Docker安装Jenkins

这一步似乎很简单,但不要按照官方教程上所说的来,而按照以下命令执行:

docker run --name jenkins -p 8088:8080 -p 50000:50000 -v /var/jenkins_home:/var/jenkins_home -e PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/src/arcanist/bin" jenkins/jenkins

-p 8088:8080是为了避免8080端口冲突(毕竟只要是个Java程序就想占用8080端口),-e设置里特意增加了/src/arcanist/bin是为下一步集成Phabricator里的Arcanist做准备,因为如果不在这里设置好这个环境变量的话,后面会带来很大麻烦。

进Docker安装Arc

因为官方提供的Docker里根本就没有Arcanist,所以我们必须进入Docker的容器,手工安装arc

docker exec -it -u root jenkins bash

好在这个Docker并不复杂,只是一个Debian,所以我们以root用户进入,然后:

apt-get update
apt-get install php
apt-get install php-curl
apt-get install rsync
apt-get install vim
mkdir /src
cd /src
git clone git://github.com/facebook/libphutil.git
git clone git://github.com/facebook/arcanist.git

把你的ssh公钥私钥文件拷到/var/jenkins_home/.ssh里,因为后面不论是git还是rsync你都需要它们。然后再以jenkins用户身份进入Docker

docker exec -it -u jenkins jenkins bash

然后:

arc set-config default http://your.phabricator.com/
cd /var/jenkins_home/.ssh
chmod 600 id_rsa
chmod 600 id_rsa.pub

如果需要rsync任何主机,则必须首先ssh到该主机一次,把该主机的地址加入到known_hosts文件中,rsync方能成功。

至此,你已经把官方提供的Docker改得面目全非,才算正确地在Docker里安装好了arcJenkins

配置Phabricator和Jenkins

接下来的步骤,你就可以参照官方教程一步一步执行,我就不再重复了。

如果你也遇到了类似的头疼问题,希望这篇文章能够对你有所启发。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/27148.html

相关文章

  • Jenkins 使用 Kubernetes Plugin 完成持续构建与发布

    摘要:所有需要跑任务的通过模版动态创建,当任务执行结束自动删除。同时也可以用配置完毕,可以点击按钮测试是否能够连接的到,如果显示则表示连接成功,配置没有问题。 介绍 基于Kubernetes和Jenkins来实现CI/CD。 所有需要跑任务的jenkins slave(pod)通过模版动态创建,当任务执行结束自动删除。 showImg(https://segmentfault.com/img...

    icyfire 评论0 收藏0
  • DCOS应用案例-不同场景的应用上云迁移

    摘要:极大地降低了平台的复杂度,更加方便企业开发人员实现各种业务应用,帮助企业轻松打造基于云计算的软件基础设施。本文将从实际案例出发,结合不同的使用场景,为各位介绍的这些特性。是未来数据中心操作系统的核心。 0.前言 随着 Docker 技术的日渐火热,本就火爆的云计算行业进入了一个加速阶段。云计算最大的特点是弹性和灵活,帮助企业应对复杂的业务需求。由于云计算的IT构架和上一代的IT构架有很...

    PumpkinDylan 评论0 收藏0
  • 基于 jenkins docker 的个推持续集成平台

    摘要:基于的特性,以及持续集成的需求,个推采用为持续集成搭建了一整套测试系统。个推持续集成流程以一个假设名为模块为例,以开发人员的视角阐述了持续集成的逻辑。 软件开发过程中,开发成员经常需要把自己工作集成到项目中,通常每个成员每天至少集成一次。如果项目较小,对外部的依赖较小,那么软件集成可能不会是什么问题。但是目前很多软件项目特别是互联网项目面临着需求不明确,系统架构复杂,任务分配混乱等一系...

    binaryTree 评论0 收藏0
  • 智能运维 | 如何做好持续集成——Jenkins on Mesos 实践

    摘要:而持续集成的意义就在于减少风险,和重复的过程,最终提高工作效率。第二级调度由被称作的组件组成。能和不同类型的通信,每种由相应的应用集群管理。这是的任务启动过程。数人云运维平台持续集成实践这是数人云运维平台的持续集成实践。 今天小数给大家带来的又是十足的干货:当运维遇到云计算,当Docker遇到Mesos和Jenkins,会擦出怎样的火花呢?且看来自数人云运维工程师金烨的演讲实录分享——...

    lsxiao 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<