最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

基于docker的AI-Codereview-Gitlab部署實(shí)戰(zhàn)教程

 更新時(shí)間:2025年05月07日 09:21:24   作者:一點(diǎn)空白  
AI-Codereview-Gitlab是一個(gè)基于大模型的自動(dòng)化代碼審查工具,幫助開發(fā)團(tuán)隊(duì)在代碼合并或提交時(shí),快速進(jìn)行智能化的審查(Code Review),提升代碼質(zhì)量和開發(fā)效率,這篇文章主要介紹了基于docker的AI-Codereview-Gitlab部署實(shí)戰(zhàn) ,需要的朋友可以參考下

AI-Codereview-Gitlab是一個(gè)基于大模型的自動(dòng)化代碼審查工具,幫助開發(fā)團(tuán)隊(duì)在代碼合并或提交時(shí),快速進(jìn)行智能化的審查(Code Review),提升代碼質(zhì)量和開發(fā)效率。

主要功能

  • ?? 多模型支持
    • 兼容 DeepSeek、ZhipuAI、OpenAI、通義千問 和 Ollama,想用哪個(gè)就用哪個(gè)。
  • ?? 消息即時(shí)推送
    • 審查結(jié)果一鍵直達(dá) 釘釘、企業(yè)微信 或 飛書,代碼問題無處可藏!
  • ?? 自動(dòng)化日報(bào)生成
    • 基于 GitLab & GitHub Commit 記錄,自動(dòng)整理每日開發(fā)進(jìn)展,誰在摸魚、誰在卷,一目了然 ??。
  • ?? 可視化 Dashboard
    • 集中展示所有 Code Review 記錄,項(xiàng)目統(tǒng)計(jì)、開發(fā)者統(tǒng)計(jì),數(shù)據(jù)說話,甩鍋無門!
  • ?? Review Style 任你選
    • 專業(yè)型 ??:嚴(yán)謹(jǐn)細(xì)致,正式專業(yè)。
    • 諷刺型 ??:毒舌吐槽,專治不服("這代碼是用腳寫的嗎?")
    • 紳士型 ??:溫柔建議,如沐春風(fēng)("或許這里可以再優(yōu)化一下呢~")
    • 幽默型 ??:搞笑點(diǎn)評(píng),快樂改碼("這段 if-else 比我的相親經(jīng)歷還曲折!")

工作原理

當(dāng)用戶在 GitLab 上提交代碼(如 Merge Request 或 Push 操作)時(shí),GitLab 將自動(dòng)觸發(fā) webhook事件,調(diào)用本系統(tǒng)的接口。系統(tǒng)隨后通過第三方大模型對代碼進(jìn)行審查,并將審查結(jié)果直接反饋到對應(yīng)的 Merge Request 或 Commit 的Note 中,便于團(tuán)隊(duì)查看和處理。

以上均為官方描述,下面進(jìn)行實(shí)戰(zhàn)部署操作。

部署實(shí)戰(zhàn)

官方給了兩種部署方案,分別是Docker部署和本地Python環(huán)境部署,我們采用的是第一種,并且根據(jù)實(shí)戰(zhàn)操作對部分內(nèi)容進(jìn)行了修改。

1. 前期環(huán)境準(zhǔn)備

操作系統(tǒng):centos7

Docker版本:24.0.0

Docker-Compose版本:v2.28.0

git版本:1.8.3.1

  • Docker國內(nèi)鏡像源設(shè)置:

    vim /etc/docker/daemon.json

    將daemon.json改為如下內(nèi)容:

    { 
         "registry-mirrors": ["https://registry.docker-cn.com","https://pee6w651.mirror.aliyuncs.com"],
         "live-restore": true
    }

    保存成功后,運(yùn)行如下命令進(jìn)行重新加載:

    systemctl daemon-reload
    systemctl restart docker

2.獲取源碼

實(shí)戰(zhàn)命令(由于訪問GitHub經(jīng)常超時(shí)或者時(shí)間較長):

cd /opt
git clone https://gitcode.com/gh_mirrors/ai/AI-Codereview-Gitlab.git
cd AI-Codereview-Gitlab

官方命令:

cd /opt
git clone https://github.com/sunmh207/AI-Codereview-Gitlab.git
cd AI-Codereview-Gitlab

3. 配置文件

獲取源碼后,在AI-Codereview-Gitlab目錄下,創(chuàng)建配置文件,執(zhí)行如下命令:

cp conf/.env.dist conf/.env
vim conf/.env

編輯 conf/.env 文件,配置以下關(guān)鍵參數(shù):

大模型供應(yīng)商配置參數(shù),此處采用本地ollama部署的Deepseek:32B的大模型,因此修改如下參數(shù)部分:

#大模型供應(yīng)商配置,支持 deepseek, openai,zhipuai,qwen 和 ollama
LLM_PROVIDER=ollama
...
#OllaMA settings; 注意: 如果使用 Docker 部署,127.0.0.1 指向的是容器內(nèi)部的地址。請將其替換為實(shí)際的 Ollama服務(wù)器IP地址。
OLLAMA_API_BASE_URL=http://127.0.0.1:11434
OLLAMA_API_MODEL=deepseek-r1:32b
...

Gitlab配置,由于本地GitLab端口不是默認(rèn)80,因此修改如下參數(shù)部分:

#Gitlab配置
GITLAB_URL=http://192.168.1.111:9080/ #部分老版本Gitlab webhook不傳遞URL,需要開啟此配置,示例:https://gitlab.example.com
#GITLAB_ACCESS_TOKEN={YOUR_GITLAB_ACCESS_TOKEN} #系統(tǒng)會(huì)優(yōu)先使用此GITLAB_ACCESS_TOKEN,如果未配置,則使用Webhook 傳遞的Secret Token

同時(shí)還需要修改api.py文件內(nèi)容,修改內(nèi)容如下:

將
def handle_github_webhook(event_type, data):
    # 獲取GitHub配置
    github_token = os.getenv('GITHUB_ACCESS_TOKEN') or request.headers.get('X-GitHub-Token')
...
改為:
def handle_github_webhook(event_type, data):
    # 獲取GitHub配置
    github_token = os.getenv('GITHUB_ACCESS_TOKEN')
...
  • 推送配置,由于本次沒有設(shè)置企微或釘釘推送,因此未進(jìn)行相關(guān)配置,有需求根據(jù)env中的提示進(jìn)行配置。

4. 鏡像修改

官方配置的鏡像源部分位于境外,導(dǎo)致部署過程中下載較慢或者網(wǎng)絡(luò)異常,因此需要修改docker-compose.yml和Dockerfile中的部分參數(shù),具體如下:

  • 修改docker-compose.yml中的image參數(shù):

修改Dockerfile中Python 基礎(chǔ)鏡像和依賴源參數(shù):

# 使用官方的 Python 基礎(chǔ)鏡像改為swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/python:3.10-slim國內(nèi)
FROM swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/python:3.10-slim AS base
...
# 安裝依賴加上國內(nèi)源
RUN pip install --no-cache-dir -r requirements.txt -i https://pypi.mirrors.ustc.edu.cn/simple/

修改完成后進(jìn)行保存。

5. 啟動(dòng)服務(wù)

docker-compose up -d

6. 驗(yàn)證部署

  • 主服務(wù)驗(yàn)證:
  • Dashboard 驗(yàn)證:

7. 配置 GitLab Webhook

創(chuàng)建Access Token

方法一:在 GitLab 個(gè)人設(shè)置中,創(chuàng)建一個(gè) Personal Access Token。

方法二:在 GitLab 項(xiàng)目設(shè)置中,創(chuàng)建Project Access Token。

注:創(chuàng)建的Access Token需要復(fù)制后單獨(dú)保存,否則無法再次獲取。

配置 Webhook

在 GitLab 項(xiàng)目設(shè)置中,配置 Webhook:

備注

  • Token使用優(yōu)先級(jí)
    - 系統(tǒng)優(yōu)先使用 .env 文件中的 GITLAB_ACCESS_TOKEN。
    - 如果 .env 文件中沒有配置 GITLAB_ACCESS_TOKEN,則使用 Webhook 傳遞的Secret Token。
  • 網(wǎng)絡(luò)訪問要求
    - 請確保 GitLab 能夠訪問本系統(tǒng)。
    - 若內(nèi)網(wǎng)環(huán)境受限,建議將系統(tǒng)部署在外網(wǎng)服務(wù)器上。

8. 配置消息推送

配置釘釘推送

  • 在釘釘群中添加一個(gè)自定義機(jī)器人,獲取 Webhook URL。

更新 .env 中的配置:

#釘釘配置
DINGTALK_ENABLED=1  #0不發(fā)送釘釘消息,1發(fā)送釘釘消息
DINGTALK_WEBHOOK_URL=https://oapi.dingtalk.com/robot/send?access_token=xxx #替換為你的Webhook URL

企業(yè)微信和飛書推送配置類似。

最終效果

到此這篇關(guān)于基于docker的AI-Codereview-Gitlab部署實(shí)戰(zhàn)教程的文章就介紹到這了,更多相關(guān)docker AI-Codereview-Gitlab部署內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Docker MySQL 8.0.45性能優(yōu)化配置文檔方式

    Docker MySQL 8.0.45性能優(yōu)化配置文檔方式

    文章主要討論了MySQL 8.0.4 Docker容器在特定服務(wù)器環(huán)境中的優(yōu)化過程,首先描述了當(dāng)前配置和參數(shù),接著分析了優(yōu)化前的配置,發(fā)現(xiàn)存在嚴(yán)重的資源浪費(fèi),隨后,文章詳細(xì)介紹了優(yōu)化后的參數(shù)配置,包括InnoDB緩存、連接與線程配置、內(nèi)存在存臨時(shí)表、慢查詢?nèi)罩镜鹊鹊恼{(diào)整
    2026-05-05
  • 如何使用 Gunicorn + Nginx + Docker 將 Django 項(xiàng)目部署到云服務(wù)器

    如何使用 Gunicorn + Nginx + Docker 

    本篇文章介紹了使用Gunicorn+Nginx+ocker器ginx三件套部署Dginx+Nginx+N開發(fā)服務(wù)器的全過程,本文結(jié)合實(shí)例給大家講解的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2026-05-05
  • Docker運(yùn)行hello-world鏡像失敗或超時(shí)的問題

    Docker運(yùn)行hello-world鏡像失敗或超時(shí)的問題

    在安裝Docker并嘗試運(yùn)行hello-world時(shí),可能會(huì)遇到超時(shí)問題,這通常是由于默認(rèn)的鏡像源訪問速度慢造成的,解決這個(gè)問題的辦法是更換鏡像源,雖然許多人推薦使用阿里云的鏡像源,對Docker hello-world超時(shí)問題感興趣的朋友一起看看吧
    2024-09-09
  • docker安裝redis掛載容器卷同時(shí)開啟持久化

    docker安裝redis掛載容器卷同時(shí)開啟持久化

    本文主要介紹了docker安裝redis掛載容器卷同時(shí)開啟持久化,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • Docker 批量刪除容器與鏡像高效清理資源的完整指南

    Docker 批量刪除容器與鏡像高效清理資源的完整指南

    這篇文章主要介紹了Docker 批量刪除容器與鏡像高效清理資源的完整指南,本文將系統(tǒng)性地介紹如何安全、高效地批量刪除容器和鏡像,并提供實(shí)用命令與自動(dòng)化建議,需要的朋友可以參考下
    2026-03-03
  • Docker for windows pull鏡像文件的安裝位置改變的方法

    Docker for windows pull鏡像文件的安裝位置改變的方法

    這篇文章主要介紹了Docker for windows pull鏡像文件的安裝位置改變的方法的相關(guān)資料,需要的朋友可以參考下
    2016-12-12
  • 使用Docker容器在Linux上部署MySQL方式

    使用Docker容器在Linux上部署MySQL方式

    本文詳細(xì)介紹了如何在Linux上使用Docker部署MySQL服務(wù)器,包括下載鏡像、啟動(dòng)容器、連接到服務(wù)器、停止和刪除容器,以及升級(jí)服務(wù)器的步驟
    2025-02-02
  • Docker部署Redis實(shí)現(xiàn)密碼訪問+數(shù)據(jù)持久化(服務(wù)器版)

    Docker部署Redis實(shí)現(xiàn)密碼訪問+數(shù)據(jù)持久化(服務(wù)器版)

    本文主要介紹了Docker部署Redis實(shí)現(xiàn)密碼訪問+數(shù)據(jù)持久化,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2026-04-04
  • idea使用docker生成鏡像的詳細(xì)步驟

    idea使用docker生成鏡像的詳細(xì)步驟

    本文詳細(xì)介紹了在Windows環(huán)境下使用Docker?Desktop進(jìn)行Docker鏡像的打包、運(yùn)行、導(dǎo)出以及在Linux系統(tǒng)中的導(dǎo)入操作,重點(diǎn)講解了如何在Windows中安裝Docker?Desktop,構(gòu)建Docker鏡像的步驟,文中介紹的非常詳細(xì),需要的朋友可以參考下
    2024-10-10
  • 使用Docker Compose編排本地容器的詳細(xì)步驟

    使用Docker Compose編排本地容器的詳細(xì)步驟

    Docker Compose 是一個(gè)用于定義和運(yùn)行多容器 Docker 應(yīng)用的工具,通過?docker-compose.yml?文件,你可以輕松地將多個(gè)本地容器組合成一個(gè)完整的應(yīng)用,本文給大家介紹了使用Docker Compose編排本地容器的詳細(xì)步驟,需要的朋友可以參考下
    2025-09-09

最新評(píng)論

皮山县| 南开区| 垦利县| 肥乡县| 黑河市| 大竹县| 盐源县| 镇康县| 太和县| 滨州市| 根河市| 于田县| 松潘县| 都昌县| 双辽市| 宜兰县| 永靖县| 呈贡县| 吴川市| 南城县| 图们市| 徐州市| 玛多县| 沙洋县| 房产| 额尔古纳市| 三门县| 西城区| 泌阳县| 富锦市| 茂名市| 马边| 福清市| 南木林县| 曲松县| 镇平县| 留坝县| 垦利县| 新丰县| 霍州市| 勃利县|