Jenkins是一款由Java編寫的開源的持續整合工具,
個人覺方便又好用,
在公司也是使用Jenkins解決煩人的部署問題,
在上次參加的鐵人賽中也要介紹到Jenkins ,可以參考以下兩篇
Day 9 Jenkins CI/CD 伺服器(一)
Day 10 Jenkins CI/CD 伺服器(二)
現在我們在 Azure 上用 Jenkins 服務。
創建 cloud-init-jenkins.txt 檔案
以下腳本是在主機上安裝 Jenkins 系統,並啟動 Jenkins 服務
#cloud-config
package_upgrade: true
runcmd:
- apt install openjdk-8-jdk -y
- wget -qO - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add -
- sh -c 'echo deb https://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'
- apt-get update && apt-get install jenkins -y
- service jenkins restart
使用 az group create 建立資源群組
az group create \
--name QuickstartJenkins-rg \
--location eastus
查看 az vm 指令
az vm -h
查看 az vm create 指令
az vm create -h
參數太多,直接從 Examples 開始看XD
由上面的範例暸解各參數的意義
資源群組: QuickstartJenkins-vm
映像檔名稱: UbuntuLTS
管理者名稱: azureuser
--generate-ssh-keys: 產生 SSH-Key
--custom-data: 執行客製化腳本
az vm create \
--resource-group QuickstartJenkins-rg \
--name QuickstartJenkins-vm \
--image UbuntuLTS \
--admin-username "azureuser" \
--generate-ssh-keys \
--custom-data cloud-init-jenkins.txt
使用 az vm list 確認新虛擬機器的建立 (和狀態)
az vm list -d -o table --query "[?name=='QuickstartJenkins-vm']" -g QuickstartJenkins-rg
請使用 az vm open,在新的虛擬機器上開啟連接埠 8080
az vm open-port \
--resource-group QuickstartJenkins-rg \
--name QuickstartJenkins-vm \
--port 8080 --priority 1010
使用 az vm show 取得範例虛擬機器的公用 IP 位址
az vm show \
--resource-group QuickstartJenkins-rg \
--name QuickstartJenkins-vm -d \
--query [publicIps] \
--output tsv
公用IP 每個VM不一樣,在實作的時候參考自己的VM IP
登入 Jenkins VM
ssh azureuser@<ip_address>
取得 Jenkins 服務的狀態
service jenkins status
取得自動產生的 Jenkins 密碼
sudo cat /var/lib/jenkins/secrets/initialAdminPassword
開啟網頁,輸入密碼
http://<ip_address>:8080
再來依據教學安裝套件
輸入 Create First Admin User
歡迎使用Jenkins! 頁面
以上動作就完成在 Azure 部署 Jenkins 系統,感覺很簡單XD。
上一篇 Day28 Azure Cache for Redis 服務
下一篇 Day30 使用 Jenkins 系統來部署 Azure