dotnet cicd gitlab-runner安装配置及其注意事项

文章目录

  • 前言
  • 一、服务器上安装git
  • 二、服务器上安装dotnet SDK
  • 三、安装gitlab-runner
  • 四、现在就开始注册我们的gitlab-runner啦
    • 1、我们先打开一下我们的gitlab,切换到我们的Runners栏目
    • 2、切换回我们的服务器上
    • 3、点击修改一下 runner
  • 五、项目配置测试
    • 1、创建一个默认的.netcore 3.1的api的 项目
    • 2、配置yml文件
  • 总结


前言

随着时代的微服务架构,自动化发布部署必不可少,本文用.netcore 配置 cicd 在测试环境实现发布部署,本文主要是配置gitlab-runner安装配置及其注意事项

一、服务器上安装git

在gitalb-ci.yml 文件中我有用到git 来进行拉取代码到本地服务器上的。
安装地址:https://www.cnblogs.com/wulixia/p/11016684.html

二、服务器上安装dotnet SDK

gitlab-ci.yml文件中git拉取完代码后需要把代码进行编译、发布出来,因此需要用到dotnet sdk。

在安装.NET之前,您需要注册Microsoft密钥,注册产品存储库并安装所需的依赖项。这只需要每台机器完成一次。打开命令提示符并运行以下命令:

sudo rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm

安装.NET SDK,更新可用于安装的产品,然后安装.NET SDK。在命令提示符中,运行以下命令:

sudo yum update 
sudo yum install libunwind libicu 
sudo yum install dotnet-sdk-3.1.0

三、安装gitlab-runner

安装gitlab-runner的方式很多,有使用gitlab存储库的,以及手动安装,具体的可以参考官方给出的方案,这边我采用手动安装gitlab-runner

下载二进制文件

# Linux x86-64
sudo wget -O /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64

赋予权限:

sudo chmod +x /usr/local/bin/gitlab-runner

创建gitlabCI用户:

sudo useradd --comment 'GitLab Runner' --create-home gitlab-runner --shell /bin/bash

安装并作为运行服务:

sudo /usr/local/bin/gitlab-runner install --user=gitlab-runner --working-directory=/home/gitlab-runner
sudo /usr/local/bin/gitlab-runner start

四、现在就开始注册我们的gitlab-runner啦

注册runner需要配合我们的gitlab来操作。

1、我们先打开一下我们的gitlab,切换到我们的Runners栏目

dotnet cicd gitlab-runner安装配置及其注意事项_第1张图片

2、切换回我们的服务器上

gitlab-runner register

dotnet cicd gitlab-runner安装配置及其注意事项_第2张图片
注册完毕后
dotnet cicd gitlab-runner安装配置及其注意事项_第3张图片

3、点击修改一下 runner

然后我们选择一下 此runner 挂钩的 项目。我们选择项目,点击后面的 “Enable”即可。
dotnet cicd gitlab-runner安装配置及其注意事项_第4张图片
gitlab已经配置完成了

五、项目配置测试

项目的地址

1、创建一个默认的.netcore 3.1的api的 项目

dotnet cicd gitlab-runner安装配置及其注意事项_第5张图片

2、配置yml文件

stages:
  - deploy
  - images

variables:
  groups: wqs
  project: test
  port: 30002

deploy:
  stage: deploy
  script:
    - cd /.local/bin 
    - ./deploy $groups $project $port     
  only:
    - master  
  tags:
    - v2

images:
  stage: images  
  script:
    - docker build -t $project -f /www/project/$groups/$project/Dockerfile .           
    - docker stop $project
    - docker rm $project
    - docker run -d -v /www/project/$groups/$project:/code -p $port:80 --restart=always --name $project $project   
    - docker image prune -f
    - docker cp cert $project:/app      
  only:
    - master
  tags:
    - v2

注意的是

- cd /.local/bin 
- ./deploy $groups $project $port     

在服务端创建目录

vim -p /.local/bin 
vim /.local/bin/deploy

把代码

if [[ ! -d "/www/gitproject/$1/$2" ]];then
     mkdir -p /www/gitproject/$1
    cd /www/gitproject/$1
    git clone http://root:[email protected]/$1/$2.git
    cd $2
    dotnet build --configuration Release
    docker run -d -p $3:80 --restart=always --name $2 $2
    mkdir -p /www/project/$1/$2
    dotnet publish -c Release --output /www/project/$1/$2
    docker build -t $2 -f /www/project/$1/$2/Dockerfile .
    docker run -d -p $3:80 --restart=always --name $2 $2
else
    echo "存在"
    cd /www/gitproject/$1/$2
    git pull origin master
    echo "拉取成功!"
fi
cd /www/gitproject/$1/$2
dotnet build --configuration Release
rm -rf /www/project/$1/$2
dotnet publish -c Release --output /www/project/$1/$2
cd /www/project/$1/$2


编辑到vim /.local/bin/deploy 里边去

把 git clone http://root:[email protected]/$1/$2.git 账号、密码、地址换上自己的即可。

gitlab-runner的创建用户可能没有权限,添加下即可
我的www目录
dotnet cicd gitlab-runner安装配置及其注意事项_第6张图片

gitlab
dotnet cicd gitlab-runner安装配置及其注意事项_第7张图片


总结

我参考配置文档是
参考文档:https://www.cnblogs.com/guolianyu/p/9709166.html
官方文档:https://docs.gitlab.com/runner/install/linux-repository.html
注册runner:https://docs.gitlab.com/runner/register/index.html

可能出现的问题
1,git版本低了,2文件夹权限不足。

报什么错查一下修复即可。

你可能感兴趣的:(docker,ci/cd,.net,core,cicd)