PHP持續集成實踐

概念

頻繁的自動化構建項目。html

參考文章
持續集成是什麼?-阮一峯
php項目的持續集成 - 老番linux

Jenkins

Jenkins是自動化服務器軟件,它提供了數百個插件來支持構建、部署和自動化任何項目。
Jenkins 官網apache

Jenkins 安裝

Jenkins 依賴 Java JDK
Ubuntu 16.04安裝Java JDK瀏覽器

Linux 安裝 Jenkins
安裝教程能夠在官網查找,下載地址 Jenkins官方下載地址服務器

Jenkins 初始化

輸入初始化密碼,經過瀏覽器訪問,第一次訪問會要求輸入管理員密碼,密碼會被記錄在 /var/lib/jenkins/secrets/initialAdminPassword 文件中。
定製安裝流程,能夠選擇默認安裝和自定義安裝,這裏我選擇了默認安裝,進入Getting Started界面,等待安裝完成。
建立管理員帳號Username:jiangm Pasword:123456
配置Jenkins實例,能夠配置Jenkins URL,這裏我默認的用ip加端口形式訪問。
初始化完成,這裏按道理來講應該是到歡迎界面,可是我跳轉到了空白頁,刷新頁面也沒用,在控制檯看頁面是已經加載了,只是<iframe>中的內容沒有獲取到。因而我用瀏覽器重啓了Jenkins 方法是URL後面接/restart便可,還能夠/exit關閉、/reload從新加載配置。重啓後恢復正常。
安裝必要插件,安裝插件 Git pluginPublish Over SSH,配置 Publish Over SSH系統管理->系統設置,先要設置Jenkins SSH Key的密碼,而後添加SSH Service須要持續集成的服務器。ui

安裝完插件後重啓Jenkins時,瀏覽器重啓時,遇到了一直處於重啓中的問題,後來經過命令重啓解決。spa

Jenkins 部署項目

新建項目,在歡迎界面選擇New Job來建立項目,建立項目須要設置項目名稱和項目類型,這裏我選擇的項目類型是構建一個自由風格的軟件項目。也能夠複製現有的項目建立爲新項目。
配置新項目
配置Source Code Management源代碼版本管理。插件

配置Build構建步驟,選擇Send files or execute commands over SSH,填寫配置。rest

到這裏就能夠構建咱們的項目了。

Jenkins 項目配置

構建觸發器,有五種觸發器。
遠程構建觸發
其餘項目構建後觸發
定時構建,根據計劃任務進行自動構建。
用於GITScm輪詢的GitHub鉤子觸發
輪詢SCM,添加計劃任務主動輪詢倉庫是否有版本更新,只要SVN或Git中數據有更新,則執行構建任務。與定時構建不衝突。

Jenkins 經常使用操做

Jenkins啓動/重啓/中止命令
啓動 service jenkins start
重啓 service jenkins restart
中止 service jenkins stop

修改端口,能夠到/etc/default/jenkins文件中修改

修改時區

// 新增一行配置
JAVA_ARGS="-Dorg.apache.commons.jelly.tags.fmt.timeZone=Asia/Shanghai"
// 若是上面修改不生效,修改改成下面的值
JAVA_ARGS="-Duser.timezone=Asia/Shanghai"
// 修改完重啓jenkins
相關文章
相關標籤/搜索