如何用老板在腾讯云上开发小程序《二》 :搭建Phabricator开发管理平台.
一、搭建Phabricator开发管理平台
1.1 上传 SSL/TLS 证书
第一步:下载证书并解压
第二步:将证书和私钥上传到开发管理平台服务器
1.buntu@123.207.229.222 sftp .放1_dev .*第三步:将证书和私钥复制到/主机/阴极射线管文件夹登录云主机宋承宪ubuntu@123.207.229.22,运行以下命令
1 . mkdir-p/host/CRP 2 .CP ~/1 _ dev。app cook。cn _ bundle。CRT/主机/CRT/https。证书3。CP ~/1 _ dev。app cook。cn。密钥/主机/CRT/https。证明合格的密钥
1.2 创建 Phabricator 容器
登录云主机宋承宪ubuntu@123.207.229.22,使用码头工人运行命令,创建一个名为(同脉冲亮度分析仪)脉冲振幅分析器的容器。
1 . docker run-d-restart=always-name=PHA \ 2 .-p 80:80-p 443:443-p 22233:22 \ 3 .-env PHABRICATOR _ HOST=dev。app cook。cn \ 4 .-env MYSQL _ HOST={ }数据库内网地址}} \5.-env MYSQL _ USER={ }数据库用户名(有建库权限)}} \6.-env MYSQL _ PASS={ }数据库密码}} \7.-env PHABRICATOR _ VCS _ PORT=2222 \ 8 .-env PHABRICATOR _ REPORTY _ PATH=/repa \ 9 .-env PHABRICATOR _ HOST _ KEYS _ PATH=/HOST KEYS/persisted \ 10 .-env PHABRICATOR _ STORAGE _ TYPE=disk \ 11 .-env PHABRICATOR _ STORAGE _ PATH=/files \ 12 .-env SSL _ TYPE=手动\13。-env SSL _ CErtificate=/CRT/https。证书\ 14 .-env SSL _ PRIVATE _ KEY=/CRT/https。证明合格的KeY \ 15 .-v/host/host keys :/host keys \ 16 .-v/主机/回购:/回购\ 17 .-v/主机/文件:/文件\18。-v /host/crt:/crt \19 .hach que/phabricator
1.3 解析域名
将域名dev.appcook.cn解析到123.207.229.22第一步: 登录腾讯云域名解析控制台
第二步: 进入主域名管理面板
第三步:添加A记录(建议以关联主机方式解析)
com/uploads/allimg/180413/150613B00-3.png" />1.4 安装配置
使用浏览器访问https://dev.appcook.cn,根据提示完成 Phabricator 配置。第一步: 创建管理员账号
创建成功返回控制面板
第二步: 配置网页登录鉴权方式进入auth应用
选择用户名密码认证
配置登录选项配置成功
第三步: 添加公钥 (用于代码仓库)进入设置面板
上传公钥
上传成功
第四步: 更新代码仓库所有者
1. #进入容器2. docker exec -it pha /bin/bash3.4. #更改代码仓库所有者5. chown git:wwwgrp-phabricator /repos
第五步: 配置 feed.http-hooks ( 自动部署 )进入容器,使用 ./bin/config 命令配置 Feed hook
1. sudo docker exec -it pha /bin/bash2. cd /srv/phabricator/phabricator3. ./bin/config set '''feed.http-hooks''' '''[ "http://10.141.133.180:8090/1/feed/receive" ]'''
访问https://dev.appcook.cn/config/edit/feed.http-hooks/检查配置
自动部署脚本 feed.php
1. <?php2. function get() {3. $args = func_get_args();4. $return = "\n";5. foreach ($args as $arg ) {6.7. if ( is_string($arg) ) {8. $return .= $arg;9. } else {10. $return .= json_encode($arg,11. JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES );12. }13. }14.15. return $return . "\n";16. }17.18. function pull( $repo, $version, $user, $commit ) {19.20. file_put_contents("/data/web/auto.pull.log", get([21. 'repo'=>$repo,22. 'version'=>$version,23. 'commit'=>$commit,24. 'user'=>$user25. ]), FILE_APPEND);26. }27.28.29.30. // = "trheyi committed R2:69733891ae4f: Feed.Hook {{pull}} (authored by trheyi).";31. $story = $_POST['storyText'];32. if ( preg_match("/([0-9a-zA-Z]+) committed (R[0-9]+):([0-9a-zA-Z]+):(.+)(\{\{pull\}\})/", $story, $match ) ){33.34. $user = $match[1];35. $repo = $match[2];36. $version = $match[3];37. $commit = $match[4];38.39. pull( $repo, $version, $user, $commit );40. }41.42.43.44. $string = get([$_REQUEST, $_POST, $_GET]);45. file_put_contents("/data/web/phabricator.feed.log", $string, FILE_APPEND);46. echo "COMPLETE";
版权声明:如何用老板在腾讯云上开发小程序《二》 :搭建Phabricator开发管理平台.是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。