- Published on
利用 Docker 快速建置 CI/CD 平台 Jenkins
- Authors
- Name
- Rick Jiang
最近協助團隊導入了 Jenkins 作為我們的 CI/CD 平台,在我還沒有來到這個團隊時,每當前後端版本有更新時總是都得人工在本機進行編譯後遠端連線至伺服器進行關閉現有服務、替換新程式、開啟服務,其中許多的人工行為非常耗時且枯燥,光是部署的時間成本可能就得耗費不少並且可能有人為失誤的可能性,所以盡可能的將這些交給自動化處理
CI/CD 的資訊在網路上都有許多不錯的分享,這邊簡單重點 CI/CD 主要目的如下
- 降低人為疏失風險
- 減少人工手動的反覆步驟
- 進行版本控管制
- 增加系統一致性與透明化
- 減少團隊 Loading
如果想了解更多 CI/CD 的資訊可以看看其它網路上的分享,本篇文章著重於如何快速建置
Jenkins 本身有提供 Docker Image,所以我們可以編寫 Docker Compose 快速將 Jenkins 建置起來
docker-compose.yml
version: '3.7'
services:
jenkins:
image: jenkins/jenkins
container_name: jenkins
privileged: true
user: root
environment:
- TZ=Asia/Taipei
- JAVA_OPTS=-Duser.timezone=Asia/Taipei
volumes:
- ./jenkins_data:/var/jenkins_home # 數據持久化
- /var/run/docker.sock:/var/run/docker.sock # 掛載本機 Docker 到 Jenkins 容器中使用
networks:
- jenkins
ports:
- 8080:8080
- 50000:50000
restart: always
networks:
jenkins:
只要建立 docker-compose.yml
後並打開 Terminal 到同層目錄下指令即可完成建置,接著就可以打開瀏覽器連到 http://localhost:8080/
開始享受 Jenkins 的坑了
docker-compose up -d