技術專欄

AWS CodeCommit,安全且可輕鬆擴展的Git服務,開發者可輕鬆管理開發專案 Source Code

AWS 雲端運算服務
2023/01/11

技術六處三部 雲端解決方案架構師 Johnson Liu

© 2022, AWS CodeCommit Amazon Web Services, Inc.或其合作夥伴。保留所有權利。

 

在做軟體開發時,總是希望減少基礎設施管理上的負擔;而開發工作需要版本控制服務時,往往可以選擇如GitLab、GitHub等服務...用來管理 Source Code 或是其他文件,也可以免去建置和管理 Git Server。而以上總總需求在 AWS 上可以選擇 CodeCommit 這項服務,用以協助開發者們輕鬆且安全的去管理Source Code,並可自由擴展,不必自行維護Git Server,能夠更專心的進行開發任務。

 

( 圖片取自AWS CodeCommit : hhttps://aws.amazon.com/tw/codecommit/ © Amazon Web Service )

 

若是5人以下的小型開發團隊,AWS CodeCommit 也有免費方案,並不會有額外的費用產生。

相關方案與定價可參考「AWS CodeCommit 定價」頁面:

https://aws.amazon.com/tw/codecommit/pricing/

 

什麼是 AWS CodeCommit?

AWS CodeCommit 是一種 Git 儲存庫,支援 Git 標準操作,由 Amazon Web Service 託管的版本控制服務,可以用來管理 Source Code 或是其他二進制檔案,不需要自行管理 Git Server,且能於其他 Amazon Web Service搭配使用,例如搭配 AWS CodePipeline 做持續整合/交付(CI/CD)。

 

AWS CodeCommit 在 Linux、macOS、Unix 上使用 SSH 連線環境設置

這份文章會專注在CodeCommit上的使用講解,所以預設情境是已經有 IAM User、CodeCommit 允許使用權限、Git 安裝完成。

在 Linux、macOS、Unix 上設定登入資料
此部分參考 AWS CodeCommit 官方文件(參考資料[2])

1. 在本地電腦的終端機上執行。
   $ ssh-keygen
2. 輸入儲存金鑰的目的地,儲存在這台電腦底下的使用者的 .ssh 資料夾 /Users/user-name/.ssh/codecommit_rsa。
3. 視需求輸入使用金鑰的密碼,不需要的話Enter鍵略過。

4. 確認密碼。
5. 產生私鑰檔案 codecommit_rsa 和公鑰檔案 codecommit_rsa.pub。
6. 執行此命令,並將值複製。
   $ cat /Users/user-name/.ssh/codecommit_rsa.pub
7. 登入 AWS Management Console。
8. 在 IAM 主控台中選擇使用者並找到您的 IAM 使用者。
9. 選擇 Security Credentials (安全登入資料),然後選擇 Upload SSH public key (上傳 SSH 公有金鑰)。
10. 將 SSH 公有金鑰的內容貼到欄位中,然後選擇 Upload SSH public key (上傳 SSH 公有金鑰)。
11. 上傳後回到頁面會產生 SSH Key ID (SSH 金鑰 ID),將他複製下來。

12. 在 .ssh 資料夾建立名為config的組態檔
    $ touch /Users/user-name/.ssh/config
13. 編輯組態檔設定
    $ vi /Users/user-name/.ssh/config
14. 輸入下列資訊後存檔
    Host git-codecommit.*.amazonaws.com
    User Your-SSH-KEY-ID
    IdentityFile ~/.ssh/codecommit_rsa
15. 更改組態檔的許可
    $ chmod 600 config
16. 測試 SSH 組態檔,成功的話將會出現成功訊息
    $ ssh git-codecommit.us-east-2.amazonaws.com
 

開始使用 AWS CodeCommit

經過了辛苦的設定,接著可以開始使用 CodeCommit 的服務了。

在 AWS Management Console 上進入 CodeCommit 後選取左側的儲存庫,即可看到所有的儲存庫,點擊右上角建立儲存庫,輸入儲存庫名稱跟描述後就可以建立成功了,下圖為示範建立好的儲存庫。

接著點擊設定好的儲存庫,第一次進入的話是空的,此時頁面上會提示您對應系統的連結步驟。

最後複製儲存庫到本地,可以使用終端機命令或是 Git GUI 工具複製儲存庫,這邊使用的是終端機命令。
$ git clone ssh://git-codecommit.ap-northeast-1.amazonaws.com/v1/repos/MetaAge_CodeCommit_Sample
接著可以開始使用 AWS CodeCommit 的版本控制服務,一般的 Git 指令都是通用的,例如:

 

 

使用 AWS CodeCommit 還能依據專案需求在不同的 Region(地區)建置儲存庫,可以減少因為地理區域的網路傳輸延遲以及依據專案架構調整。操作 AWS CodeCommit 支援瀏覽器介面、AWS API、AWS CLI、CLI、支援 Git 的 GUI 工具,支援多種使用方法,滿足您在開發上的需求。

 

MetaAge 邁達特,除了技術支援,也提供 7 x 24 全託管MSP服務

MetaAge 邁達特在資安、網路、儲存、伺服器、虛擬化、資料庫管理有豐富經驗,技術深厚的架構師群與維運團隊是企業雲服務的最佳幫手。客戶無論想要部署 AWS 服務,進一步代管維運(Cloud Managed Service)、基礎架構即代碼(Infrastructure-as-code)、 API 整合、雲地整合等加值服務,邁達特均能一站式滿足多構面需求。

 

專業資訊應用服務供應商

MetaAge 邁達特(原聚碩科技)於1998年創業之初,即以成為「The ICT Solution Provider專業資訊應用服務供應商」角色自期,為經銷夥伴與企業用戶提供一流產品與專業服務,成為業界最佳之加值服務名牌通路商。針對廣大的經銷商夥伴以及雲市集之獨立軟體供應商(ISV),也可洽談經銷合作方案,設計後續合作的框架。

MetaAge 邁達特代理的軟硬體產品線均為全球知名品牌,針對廣大的經銷商夥伴以及雲市集之獨立軟體供應商(ISV),提供強大的技術支援與量身訂作之經銷合作方案,擴大合作夥伴的服務範圍,在多樣化的場域中一同實現更優質的客戶服務體驗。

邁達特持續作為IT智能化最佳夥伴,竭誠歡迎舊雨新知攜手共創數位新局。

MetaAge邁達特數位 AWS MSP 團隊導入次世代監控系統,提供客戶完全託管和完整監控的 MSP 整合服務。

聯絡方式 —— 24小時免付費電話: 080-000-8669  |  Email: aws@metaage.com.tw  |  MSP服務官方LineID: @metaage_msp

 

( 掃碼聯繫 MetaAge 邁達特 AWS MSP 團隊 )

 

延伸閱讀 : 

站外連結 :

聯絡 我們