Phabricator安装及配置

时间:2024-03-19 18:16:51

一.安装

用的是docker镜像hachque/phabricator

启动:

#docker run -d --restart=always -p 80:80 -p 443:443 -p 22:22 --env PHABRICATOR_HOST=cr.abc.com --env MYSQL_HOST=ip --env MYSQL_USER=user     --env MYSQL_PASS=password     --env PHABRICATOR_REPOSITORY_PATH=/repos -v /server/repos:/repos  hachque/phabricator


二.配置

1.LDAP集成(失败,用的OpenLadp,希望有配置成功的交流一下)

可以通过/srv/phabricator/phabricator/bin/auth ldap --trace 来调试;

2.通过jira来集成用户认证

  .选择JIRA,配置参考:

    Phabricator安装及配置

  .在jira管理后台---应用程序----应用程序连接,进行创建该phabricator的连接,然后点修改配”传入的验证“即可,详情可以参考选择jira认证后的配置页面有具体的配置方法;

  遇到的问题:当Jira Base Url是通过NG转发的话,登录会提示

Unhandled Exception ("HTTPFutureHTTPResponseStatus")
[HTTP/401] oauth_problem=signature_invalid&oauth_signature=eer1m

 解决办法:

  vi /opt/atlassian/jira/conf/server.xml:

   .useBodyEncodingForURI="true"修改为useBodyEncodingForURI="false"

   .添加proxyName="jira.abc.com" proxyPort="80" scheme="http"

 然后重启#service jira restart即可

参考:https://confluence.atlassian.com/kb/oauth-error-oauth_problem-signature_invalid-720406720.html


三.使用

  1.先要创建仓库

     Phabricator 能够创建、作为主机、观察、镜像、代理和导入仓库。如果已经有了gitlab的话,一般我们会创建仓库并设置为观察库。      

  Observe a Repository

如果再其它服务(比如GitHub,Bitbucket或者一个私有服务器)上已经有一个仓库存在了,而你想使用Phabricator,你能够配置观察模式。

当进入仓库观察模式,Phabricator平台将跟踪远程仓库的修改,并允许你在web界面的Diffusion及其他应用中对仓库进行浏览和交互,而此时,你仍然能够继续在其他的地方存储仓库。

进行以下配置来观察一个仓库:

  • 创建一个新的仓库,但是你不需要启动它。
  • 将你想要观察的仓库URI添加到远程URI中。
  • 将URI的I/O Type设置为Observe观察模式
  • 如果需要,配置认证信息
  • 启动这个仓库

Phabricator会对仓库做一次初始导入,在本地创建一份只读副本。一旦这个过程完成,它将在远程持续跟踪文件修改,对远程仓库做fetch操作,并在界面上反应出更新情况。

注意:在导入之前需要对/repos目录进行权限设置----不然会导入失败,提示权限问题;

#chown -R git:wwwgrp-phabricator /repos/

    参考:https://www.jianshu.com/p/38c84e811ab0

  2.安装并使用Arcanist工具提交

   3.配置Herald Rule:创建自定义规则,当某些事件触发了规则时提醒我们

    

四.遇到的问题

1.配置ldap错误导致无法登陆。

  参考:https://secure.phabricator.com/book/phabricator/article/configuring_accounts_and_registration/

  解决办法:进入容器执行#/srv/phabricator/phabricator/bin/auth recover admin  恢复admin用户的操作,会给你一个链接,通过该连接即可以以admin的身份登陆。

2.