利用walle發(fā)布項(xiàng)目流程:
1.設(shè)定一個(gè)宿主主機(jī)用于拉取git或svn
2.目標(biāo)發(fā)布主機(jī)
3.git配置項(xiàng)目稚新,本地可以實(shí)現(xiàn)push
4.當(dāng)修改完成發(fā)布的時(shí)候只需push上去肠骆,然后到宿主主機(jī)那邊拉取并發(fā)布。
記錄:
1.walle基于yii 故它拉取git的時(shí)候需要宿主主機(jī)的寫入權(quán)限,所以可以采用is_writeable 來驗(yàn)證對(duì)應(yīng)文件對(duì)于當(dāng)前php-fpm 用戶是否有寫入權(quán)限 這個(gè)很關(guān)鍵
2.當(dāng)能夠?qū)懭霑r(shí)皆警,還需宿主免密碼登錄發(fā)布主機(jī),基本方案是 在宿主主機(jī)當(dāng)前php-fpm用戶的.ssh下 用 ssh-keygrn -t rsa 生成 id_rsa 然后 cp id_rsa.pub 成 authroized_key 然后 用 scp authotized_key users@ip:/users/.ssh 并在發(fā)布主機(jī)上將改authkey chmod 成600
3.在宿主中 ssh users@ip 查看能否免密碼
4.還需要在發(fā)布主機(jī)中設(shè)置發(fā)布文件夾 同樣,需要對(duì) ssh 上去的users 給予改文件夾或上級(jí)目錄讀寫的權(quán)限
坑:
1.在宿主主機(jī)中配置walle的時(shí)候昂利, 流程都o(jì)k 到最后顯示 4xx 說明是nignx 的 vhost 配置有問題
2.配置好后 發(fā)現(xiàn)了 5xx錯(cuò)誤 說明是 nginx 在連接 cgi的時(shí)候報(bào)錯(cuò)了 ,這個(gè)時(shí)候可以查看nignx 的 錯(cuò)誤日志 具體可以查看nignx.conf 查看對(duì)于日志的目錄 最后發(fā)現(xiàn)是 nignx? ?vhost server 配飾 fastcgi_pass 需要和 php-fpm 下的 listen = /tmp/php-cgi.sock或 127.0.0.1:9000 相同 修改其一與另一相同 重啟相關(guān)服務(wù)即可fix 502
3. ssh 連接的時(shí)候 切記權(quán)限問題 .ssh文件夾 700 authroized_key 600?
4.如果拉git的時(shí)候報(bào)錯(cuò) 可以把git鏈接ssh 指向一個(gè)固定的賬戶