# 在GCP上架設Jenkins - 開始之前,請先準備google帳號,原本就有google帳號可以直接使用,只要沒有曾經使用過相關服務,google提供第一次使用gcp(Google Cloud Platform)用戶90天300美金的額度,使用過相關服務或沒有google帳號的,請先註冊一個。 - 架構上的概念,因為都在雲端上,很容易搞不清楚自己在做什麼,大概了解一下,我們要做的事,就是用google的Compute Engine服務,架一台虛擬機(Virtual machines),接著在虛機內設定Jenkins  - 在架設時,原本用方法一跟著官方的文件操作,但最後遇到有其他問題需要處理,為了能更快將Jenkins架起來,我最後選擇自己相對熟悉的第二個方法,架設虛擬機後再將Jenkins安裝。 ## 方法一:按照[官方文件](https://cloud.google.com/architecture/using-jenkins-for-distributed-builds-on-compute-engine)、使用Cloud Marketplace提供的Jenkins instance 到官方文件,跟著文件操作。  source: https://cloud.google.com/architecture/using-jenkins-for-distributed-builds-on-compute-engine ## 方法二:先建立instance再依據所建立的OS安裝Jenkins ### 1. 開好gcp之後,通常會自動建立一個`My First Project`,可以直接在這個project裡建立一個VM執行個體 - 先到Compute Engine底下的VM執行個體  - 建立一個新的VM執行個體  - 選取主機安裝的相關配備設定  - 選取要安裝的作業系統  - 作業系統版本選擇,建議選擇<font color='red'>22</font>的版本,比較不會遇到後續需要更新的問題  - VM執行個體的防火牆設定  ### 2.設定防火牆規則 - 點選進入設定防火牆規則  - 設定IP4以及TCP port  ### 3. 設定網路靜態位址 - 到虛擬私有雲網路 > IP位址  - 針對外部IP位址點選保留  - 填入名稱  ### 4. 回到VM執行個體,點選SSH,安裝java和jdk (參考資料[How To Install Java with Apt on Ubuntu 18.04](https://www.digitalocean.com/community/tutorials/how-to-install-java-with-apt-on-ubuntu-18-04))  - `sudo apt update` - 輸入`java -version` 查看系統安裝java版本 - 如下圖所示,系統未有java安裝  - 跟著指示安裝,記得加上`sudo` - `sudo apt install default-jre` - 確認安裝java,再輸入`java -version`一次,安裝正確會顯示相關版號  - 再安裝jdk,輸入`sudo apt install default-jdk` - 輸入`javac -version`確認安裝,顯示版號  ### 5. install chrome (參考資料[How to Install Google Chrome Web Browser on Ubuntu 18.04](https://linuxize.com/post/how-to-install-google-chrome-web-browser-on-ubuntu-18-04/)) - 輸入`wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb` 下載Google Chrome - 輸入`sudo apt install ./google-chrome-stable_current_amd64.deb`執行安裝 ### 6. 安裝 pip3 (參考資料 [How to Install Pip on Ubuntu 18.04](https://linuxize.com/post/how-to-install-pip-on-ubuntu-18.04/)) - 先輸入`sudo apt update`更新 - 再輸入`sudo apt install python3-pip` - 輸入`pip3 --version` 確認安裝成功,應顯示相關版號  ### 7. 更新 python3 版本到 python3.7,有些plugin僅支援3.7以上版本 (參考資料 [Upgrade Python to latest version (3.10) on Ubuntu Linux](https://cloudbytes.dev/snippets/upgrade-python-to-latest-version-on-ubuntu-linux)) 備註: <font color='orange'> 先前註冊有選擇ubuntu 22的版本,python應該會是在3.9以上的版本,這個步驟可以跳過</font> - 輸入`python3 --version`確認目前系統版本 - 執行```sudo add-apt-repository ppa:deadsnakes/ppa sudo apt update``` - 輸入`apt list | grep python3.7`,確認python3.7是否可使用,能看到3.7表示可以安裝  - 輸入`sudo apt install python3.7`執行安裝 - 執行`sudo nano /usr/bin/gnome-terminal` 在打開的畫面中輸入`#!/usr/bin/python3.6` 輸入完畢`Ctrl +X` ,輸入`y`,按下`Enter` - 執行`sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.6 1` - 執行`sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.7 2` - 執行`sudo update-alternatives --config python3` - 選擇3.7的版本,按下`Enter` - 最後執行`python3 --version`,確認是否已經更改使用python3.7  ### 8.安裝git `sudo apt install git` ### 9. 最後安裝 Jenkins [Jenkins Debian Packages](https://pkg.jenkins.io/debian-stable/) ``` curl -fsSL https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key | sudo tee \ /usr/share/keyrings/jenkins-keyring.asc > /dev/null ``` ``` echo deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] \ https://pkg.jenkins.io/debian-stable binary/ | sudo tee \ /etc/apt/sources.list.d/jenkins.list > /dev/null ``` ``` sudo apt-get update sudo apt-get install fontconfig openjdk-11-jre ``` `sudo apt-get install jenkins` ### 10. 安裝完畢後可以開始啟動Jenkins - `sudo systemctl start jenkins` - 確認Jenkins運行狀況 `sudo systemctl status jenkins`  - 打開瀏覽器,輸入剛剛一開始設定保留的外部ip位址,加上`:8080`,記得如果網址前面有`https`要移除,不然會無法連上 - 接下來應該就都是Jenkins的設定了 -ModuleNotFoundError: No module named 'pip._internal'  - [在Ubuntu 18.04上遇到No module named ‘pip._internal’ ](https://medium.com/@acer1832a/%E5%9C%A8ubuntu-18-04%E4%B8%8A%E9%81%87%E5%88%B0no-module-named-pip-internal-298f980f9a45)
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up