基於 Docker 的 DevOps 搭建


一直對 DevOps 感興趣,最近心血來潮,搭乘 Docker 搞一搞,Let‘s Go !!!

 

  • 1.拉取 GitLab 
docker pull gitlab/gitlab-ce
  • 2.Run GitLab 
  docker run -d
  --name gitlab
  --restart always
  --hostname 192.168.0.218
  --env GITLAB_OMNIBUS_CONFIG="external_url 'http://192.168.0.218/'; gitlab_rails['lfs_enabled'] = true;"
  -p 443:443 -p 80:80 -p 22:22
  -v /srv/gitlab/config:/etc/gitlab
  -v /srv/gitlab/logs:/var/log/gitlab
  -v /srv/gitlab/data:/var/opt/gitlab 
  gitlab/gitlab-ce:latest

 這一步很慢,要好幾分鍾,可以查看 log ,看到 ok 再訪問,host 必須要設置,不然會是 docker 生成的一個數字,現在你就可以訪問 http://localhost 看到 GitLab 了

  • 3.生成 Token

這是留着下邊用的

 

  • 3.注冊 GitLab Runner

其中第2個的 token 是在 gitlab 里 Setting——CI/CD——Runner 里給的(如下圖),成功后可以在 gitlab 里看到一個 runner

  • 4.拉取 SonarQube
docker pull sonarqube
  • 5.Run SonarQube
docker run -d --name sonarqube -p 9000:9000 -p 9092:9092 sonarqube

 現在你就可以訪問你的 http://localhost:9000 , 登錄——用戶名:admin 密碼:admin

1.Token——gitlab 的 Setting——Access Tokens——Personal Access Tokens

2.選擇項目語言,填寫 unique project key

3.根據右邊彈出提示完成步驟

下載:https://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner+for+MSBuild

命令:

SonarQube.Scanner.MSBuild.exe begin /k:"testproject2" /d:sonar.host.url="http://localhost:9000" /d:sonar.login="ae471877adee54f312188a0b5d92be11289c1436"

MsBuild.exe /t:Rebuild

SonarQube.Scanner.MSBuild.exe end /d:sonar.login="ae471877adee54f312188a0b5d92be11289c1436"

 

 為了把 SonarQube 加到 gitlab 里,需要在 SonarQube 里添加 GitLab ,方法 Administration——Marketplace 添加上 GitLab

 然后在配置里找到 GitLab 標簽,右邊填寫上 GitLab url 和 GitLab User Token

  • 6.配置  .gitlab-ci.yml

 由於我還不熟悉配置這個地方,先略過一下

  • 7.拉取 Jenkins
docker pull jenkins/jenkins
  • 8.Run Jenkins
docker run -d --name jenkins -p 8080:8080 -p 50000:50000 jenkins/jenkins:lts

這時會出現很多日志,但都不重要,最后出現的*******的位置的才重要,因為是 Unlock Jenkins 的密鑰,你說重要不重要,簡單截個圖

如果你忘了復制這個也沒關系,再用命令找回來就可以

docker logs jenkins(鏡像名稱)

訪問 http://localhost:8800/,輸入密鑰,安裝插件,填寫 admin 密碼。

  •  9.配置 Jenkins 

1. 安裝 GitLab 插件:系統管理——插件管理——安裝 GitLab 插件,重啟 Jenkins

2. 配置 GitLab:系統管理——系統設置——填寫 GitLab 配置

 

Add 里邊選 GitLab API token,然后填上之前的 GitLab 的 Token

之后就是創建任務了,具體還是要根據你的項目需要來決定,這里先略過一下

  • 9.拉取 Portainer
docker pull portainer/portainer
  • 10.Run Portainer
docker run -d --name portainer -p 9090:9000 -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer

注冊一個用戶 

點擊 local  后進入到 dashboard 頁面,也可以管理公有雲上的,此處以單機版為例


如圖所示,這里可以很輕松的創建和管理  Container ,比上邊的命令好用很多,比如 Containers 菜單里的 Create Container 可以創建一個新的 Container。更多功能等待你的挖掘,此處略過,只是想告訴大家先學習基礎再用工具,基礎還是很重要的。

 

上邊略過了2處配置的地方,所以沒有跑一個完整的流程,但是我想配置的地方還是對的,配置之后再補齊吧


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM