中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何通過jenkins和nginx構建發布網站

發布時間:2020-06-09 16:54:56 來源:億速云 閱讀:1056 作者:元一 欄目:系統運維

Jenkins

是一個開源軟件項目,是基于Java開發的一種持續集成工具,用于監控持續重復的工作,旨在提供一個開放易用的軟件平臺,使軟件的持續集成變成可能。

Nginx

是一款輕量級的Web 服務器/反向代理服務器及電子郵件(IMAP/POP3)代理服務器,在BSD-like 協議下發行。其特點是占有內存少,并發能力強,事實上nginx的并發能力在同類型的網頁服務器中表現較好。

本次實驗介紹:
nginx:web網站
svn:代碼存儲倉庫
jenkins:自動化運維工具

開發人員通過將代碼提交到svn上,運維人員通過配置jenkins自動發布到nginx目錄上。

實驗環境:
192.168.0.188   Jenkins
192.168.0.189   nginx
192.168.0.19     svn  
Jenkins、nginx、svn環境都已經準備完成,這里不進行再次搭建

步驟:
1.Jenkins安裝ssh插件,并配置遠程服務器
2.建立項目(job)配置Jenkins
3.將代碼上傳svn
4.用Jenkins發布文件
5.查看測試結果

1.Jenkins安裝ssh插件,并配置遠程服務器
在Jenkins系統管理——插件管理
如何通過jenkins和nginx構建發布網站
選擇插件publish over ssh插件并安裝,已安裝則忽略

安裝完成后開始配置系統管理——系統配置

翻到最后面,找到SSH Servers 選項然后新增
如何通過jenkins和nginx構建發布網站

測試是可以連接保存即可

釋義:
SSH Server配置為Publish Over SSH中運程機的配置,分“基本設置”和“高級設置”兩部分。“基本設置”主要是運程機IP、SSHusername、SSHport、連接超時時間等。“高級設置”和大部分“全局設置”中的選項相同。
Name:建立這臺機器的名稱
Hostname:遠程機器的地址,最好是ip地址
Username:用戶名
Remote Directory:遠程目錄
Use password authentication, or use a different key:使用密碼連接
高級設置
高級設置里能夠設置SSHport、重試時間以及又一次設置“全局設置”中的選項

全局配置:
每一項都能夠被SSH Server的設置所覆蓋,這種設計有一個優點。在server環境比較規范的情況下,能夠省去每個SSH Server分別配置的繁瑣步驟。
參數說明
Passphrase:SSH的password
使用username/password登錄時為username的password。使用私鑰登錄時為私鑰的password。
Path to key:SSH私鑰的文件路徑
私鑰文件的路徑,能夠是絕對路徑。也能夠是相對$JENKINS_HOME的相對路徑
Key:私鑰
私鑰導出后的文本內容

擴展例子:如果不使用密碼而使用秘鑰遠程連接該怎么做呢1.jenkins所在服務器生成公私鑰對2.將公鑰(idrsa.pub)傳到要遠程的機器上或者將公鑰內容輸入到遠程機器authorizedkeys文件中(/root/.ssh/authorizedkeys)chmod 600 /root/.ssh/authorizedkeys3.jenkins設置私鑰所在路徑文件,在輸入生成公私鑰的密碼即可(Passphrase/Password字段需要輸入公私鑰密碼)(Path to key字段輸入jenkins所在服務器的私鑰文件所在路徑)

假設“Key”和“Path to key”都設置,則“Key”的優先級較高,私鑰的password是“Passphrase”中設置的內容。
Disable exec:禁止在目標機上運行命令
勾選后將會忽略在Job配置中“Exec command”選項中設置的命令。Jenkins的說明文檔中的“The Disable exec in the advanced settings for individual configurations will be ignored.”沒有全然理解。從實際效果來看,僅僅要“Disable exec”被勾選后,無論SSH Server中是否勾選“Disable exec”。Job中設置的命令都將補忽略。

2.建立job任務
點擊新建任務

輸入名稱,并選擇自由風格項目然后確定

源碼管理選擇svn

其中
Repository URL:項目的svn地址
Credentials:憑證
點擊添加,添加相應用戶名即可

選擇構建后操作,選擇send build artifacts over SSH
如何通過jenkins和nginx構建發布網站
如何通過jenkins和nginx構建發布網站

參數說明:
Name
“系統管理>系統設置”設置的SSH Sverver的名字列表。
Source files
拷貝到運程機上的文件。相對workspace的路徑,也支持表達式,如上圖中的“*/.war”。
Remove prefix
文件復制時要過濾的文件夾,如上圖中的target文件夾。
Remote directory
文件得到到遠程機上的文件夾,此文件夾是相對于“SSH Server”中的“Remote directory”的。假設不存在將會自己主動創建。
Exec command
在這里能夠填寫在運程機器上運行的腳本,如:應用部署腳本

這里是直接將svn發布文件拷到nginx發布目錄上,也可以將遠程目錄修改其他的,然后運行命令拷貝到nginx上也可,這種方法比較安全

這是nginx發布前
如何通過jenkins和nginx構建發布網站
修改文件將文件傳到svn
如何通過jenkins和nginx構建發布網站

點擊構建
查看日志
如何通過jenkins和nginx構建發布網站
刷新頁面,發布成功
如何通過jenkins和nginx構建發布網站

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

崇阳县| 平利县| 建宁县| 凤城市| 余江县| 和龙市| 陆良县| 呼图壁县| 新疆| 鹤壁市| 绵竹市| 资中县| 宁城县| 南雄市| 托里县| 寻乌县| 普格县| 巴林左旗| 温泉县| 崇明县| 曲靖市| 临西县| 济阳县| 新邵县| 连平县| 若尔盖县| 宣威市| 桐梓县| 新野县| 崇州市| 甘孜县| 固始县| 南通市| 平利县| 邻水| 遵义县| 丹东市| 工布江达县| 高淳县| 全南县| 庄浪县|