發表文章

目前顯示的是有「cloud」標籤的文章

GCP DevOps 實作系列二 設定Jenkins

圖片
接續  GCP DevOps 實作系列一 建立執行個體 ,接下來要進行 Jenkins 的設定 [步驟二 設定 Jenkins] 第一次使用 Jenkins 時,可透過畫面指示找到一個預設的密碼,位置在 /var/lib/jenkins/secrets/initialAdminPassword *可透過  GCP DevOps 實作系列一  中提到的 SSH 連線到主機後取得 選推薦安裝 接下來就會進入安裝畫面 接著建立使用者 完成後就可以開始使用 Jenkins 由於這次的範例是使用 BitBucket 管控程式碼,為了讓 Jenkins 能夠與 BitBucket 溝通我們必須要安裝對應的 plugin,選擇 管理 Jenkins > 管理外掛程式 進入外掛程式管理後,選擇 可用的 > 輸入過濾條件 bitbucket > Bitbucket plugin 並直接安裝 安裝好 plugin 之後,可以嘗試建立一個 job 確認 Jenkins 是否可以正常運作。 首先,點選新增作業。進入新增作業頁面後,給予一個工作名稱 first_job (可自取) 並選擇 建置 Free-Style 軟體專案 接下來在建置段落中選擇執行 Shell  並鍵入 docker run hello-world 這個測試工作的目的只是確認 Jenkins 可以正常運作並執行 docker 指令,該指令會嘗試將 hello-world 映像檔 (image) 運行在容器 (Container) 中。 儲存後,點選儀表板左側的馬上建置,first_job 中所指定的工作就會被執行。 點選已執行任務後可在 Console Output 中看到 log,我們會發現 docker 發現沒有 hello-world 這個映像檔後,會自動抓取。成功下載後再建立容器運行映像檔 接下來要產出一組 RSA key 以供 Jenkins 能夠連到 BitBucket 取得程式碼 1. 透過 ssh 連到主機 2. 執行  sudo su jenkins 切換成 jenkins...

GCP DevOps 實作系列一 建立執行個體

圖片
今天來分享一下如何在 GCP 上建置 DevOps CI/CD 環境。以下針對使用的工具與環境做說明 Docker : 軟體容器平台 (Software Container Platform),輕量級的虛擬環境,可將軟體部署至獨立容器中的過程自動化 Jenkins : 開源的持續整合工具。我們需要使用它來執行一系列的自動化的工作包括監控程式碼的變化、重新測試與建置環境等等,以達到持續整合的目的。 BitBucket : 可以免費使用的程式碼版本控制平台。相較於 github,BitBucket可以建立不公開的儲存庫 (private repository),並提供五人以下同時使用,非常適合小型專案開發。 ubuntu 16.04 LTS : GCE 提供的映像檔 [前提備註] 目前 GCP 提供 300美金 / 年的免費專案,在規範資源內可以任意使用 GCP 的資源。當申請好帳號時,可至  GCP Console  申請免費試用。過程會需要提供信用卡資料,不過不必擔心會被收取費用,因為如果額度用完或者超過期限,專案會凍結。除非你決定要繼續使用則可手動解除。如需要知道更多內容可參考  免費試用 。完成申請之後就可以開始建置環境 [步驟一 建立執行個體] 首先我們需要建立一個執行個體,可在 Computer Engine > VM 執行個體 > 建立 填入名稱並指定區域以及機器等級還有預設的系統。 有兩種方法可以安裝需要的軟體例如 docker, Jenkins 等等。第一種方式可以在成功建立執行個體後逐一安裝,第二種方式我們可以在建立執行個體時,直接把需要的軟體透過 script 安裝進去。為了方便起見我們使用第二種方式如下 在開機指令碼中填入開機後所需要執行的 script,使用的 script 如下 script 看似複雜,其實也不過就是安裝個別軟體。 * 特別注意  useradd jenkins -G docker -m 如果想要讓 jenkins 執行 docker 指令則需要把 jenkins 加到 docker 群組中 * 特別注意  echo "jenkins ALL= NOPA...

How to upload file to Storage without login

圖片
In order to upload file to Storage without login google account, we have to implement policy document. After that, user can upload file to Storage from web page via Form directly. There are 4 rough steps: Service Account p12 file, it can be created at  GCP Console   Uploading object metadata, including Bucket Key ACL Expiration, for more information:  Policy Document encryption fill above info to Form, upload file Step One:p12 file After login GCP Console , you can generate p12 file via API Manager -> Credentials -> Create credentials Only Storage Admin assigned because we utilize Storage service only. If you need more permissions for other services, please refer available roles. Please save your p12 file properly because there is only one chance to download the file. Step Two:uploading object metadata According to  Policy Document , JSON format is required for uploading object metadata. There are two major parts:...