四虎影视在线影院在线观看,小s货再浪些再咬紧点h,国产精品水嫩水嫩,97精产国品一二三产区

無(wú)標(biāo)題文檔
wdCP系統(tǒng) (介紹,功能特性,運(yùn)行環(huán)境,安裝說(shuō)明,演示,常見(jiàn)問(wèn)題,使用教程) wdCDN系統(tǒng) (介紹,功能特性,運(yùn)行環(huán)境,安裝說(shuō)明,演示,常見(jiàn)問(wèn)題,使用手冊(cè))
wdOS系統(tǒng) (介紹,功能特性,運(yùn)行環(huán)境,安裝說(shuō)明,演示,常見(jiàn)問(wèn)題,使用教程) wdDNS系統(tǒng) (介紹,功能特性,運(yùn)行環(huán)境,安裝說(shuō)明,演示,常見(jiàn)問(wèn)題,使用手冊(cè))
注冊(cè) 發(fā)貼 提問(wèn) 回復(fù)-必看必看 wddns免費(fèi)智能 DNS 開(kāi)通 本地或虛擬機(jī)使 用wdcp 一鍵包在mysql編 譯時(shí)"卡住"
AI導(dǎo)航網(wǎng)AI應(yīng)用網(wǎng)站大全 wdcp官方技術(shù)支持/服務(wù) 阿里云8折優(yōu)惠券 無(wú)敵云 騰訊云優(yōu)惠中,現(xiàn)注冊(cè)更有260代金額券贈(zèng)送
返回列表 發(fā)帖
提問(wèn)三步曲: 提問(wèn)先看教程/FAQ索引(wdcp,wdcp_v3,一鍵包)及搜索,會(huì)讓你更快解決問(wèn)題
1 提供詳細(xì),如系統(tǒng)版本,wdcp版本,軟件版本等及錯(cuò)誤的詳細(xì)信息,貼上論壇或截圖發(fā)論壇
2 做過(guò)哪些操作或改動(dòng)設(shè)置等

溫馨提示:信息不詳,很可能會(huì)沒(méi)人理你!論壇有教程說(shuō)明的,也可能沒(méi)人理!因?yàn)?你懂的

[教程] CentOS利用WebHook實(shí)現(xiàn)PHP自動(dòng)部署Git代碼,其他系統(tǒng)原理相同

編輯權(quán)限:
vim /etc/sudoers
CentOS利用WebHook實(shí)現(xiàn)PHP自動(dòng)部署Git代碼,其他系統(tǒng)原理相同
在服務(wù)器查看apache2(我用的apache服務(wù))執(zhí)行用戶,執(zhí)行代碼:ps -ef | grep httpd   #我的服務(wù)名是httpd,這里根據(jù)自己真實(shí)的寫(xiě),比如有的是apache2。
我apache的運(yùn)行用戶是www
然后編輯權(quán)限:

root    ALL=(ALL)       ALL
下加
www     ALL=(ALL) NOPASSWD: /usr/bin/git

1. 生成公鑰
公鑰有兩個(gè):1. git用戶公鑰,2. 部署公鑰:
用戶公鑰
ssh-keygen -t rsa -C "youname@163.com"
# 然后一直回車(chē)就行
# 生成的文件通常是 /root/.ssh/id_rsa,如果非root用戶請(qǐng)查看提示上的路徑
部署公鑰
sudo -Hu www ssh-keygen -t rsa # 請(qǐng)選擇 “no passphrase”,一直回車(chē)下去
#www用戶的主目錄可以vi /etc/passwd 修改成/home/www,然后在www下建立.ssh目錄
例如:www:x:1000:1000::/home/www:/sbin/nologin
2. 準(zhǔn)備鉤子文件
創(chuàng)建和修改目錄權(quán)限:
mkdir /home/wwwroot/website.com/hook
chown -R www:www /home/wwwroot/website.com/hook
寫(xiě)入鉤子文件:
sudo -Hu www touch /home/wwwroot/website.com/hook/index.php
<?php
        $hook = str_replace('\"','"',$_POST['hook']);//碼云webhook返回的json數(shù)據(jù)對(duì)引號(hào)都轉(zhuǎn)義了,替換一下。
        $json = json_decode($hook,true);
        $target = '/www/web/hook/public_html/repos/weshop';
        $token = '碼云上新建鉤子時(shí)的密碼';
        $cmd = "cd $target; sudo -Hu www git pull";
        if ($json['password'] != $token) {
                exit('error request');
        }
        else
                echo shell_exec($cmd);
?>
確保你的hook文件可以訪問(wèn):http://example.com/hook/index.php,鉤子準(zhǔn)備完成。

3.修改git配置和保存git用戶名密碼(這步看情況吧)
sudo -Hu www git config --global credential.helper store # 永久保存
sudo -Hu www git config --global user.name "Bantes"
sudo -Hu www git config --global user.email "admin@xsooo.com" # 郵箱請(qǐng)與conding上一致


在GIT網(wǎng)站配置公鑰

1.添加用戶公鑰

復(fù)制/root/.ssh/id_rsa.pub內(nèi)容到個(gè)人設(shè)置頁(yè)的SSH公鑰里添加即可(https://coding.net/user/account/setting/keys)

2.添加部署公鑰

復(fù)制/home/www/.ssh/id_rsa.pub的內(nèi)容并添加到部署公鑰:

選擇項(xiàng)目 > 設(shè)置 > 部署公鑰 > 新建 > 粘貼到下面框并確認(rèn)

3.添加hook

初始化

1.我們需要先在服務(wù)器上clone一次,以后都可以實(shí)現(xiàn)自動(dòng)部署了:

sudo -Hu www git clone https://git.coding.net/yourname/yourgit.git /home/wwwroot/website.com/  --depth=1
這個(gè)時(shí)候應(yīng)該會(huì)要求你輸入一次Coding的帳號(hào)和密碼,因?yàn)樯厦嫖覀冊(cè)O(shè)置了永久保存用戶名和密碼,所以之后再執(zhí)行g(shù)it就不會(huì)要求輸入用戶名和密碼了。

**!!注意,這里初始化clone必須要用www用戶**

2.往Coding.net提交一次代碼測(cè)試:

在本地clone的倉(cāng)庫(kù)執(zhí)行:

git commit -am "test hook" --allow-empty
git push
OK,稍過(guò)幾秒,正常的話你在配置的項(xiàng)目目錄里就會(huì)有你的項(xiàng)目文件了。

返回列表