Gitlab Runner实现NetCore自动化持续集成

目录

1.开发工具

2.GitLab服务器搭建

3.新建webapi

4.Dockerfile配置

5.配置docker-compose.yml

6.配置.gitlab-ci.yml

7.在GitLab上添加一个新项目

8.GitLib Runner安装

9.提交代码到gitlab

10.在GitLab上查看运行状态

11.本地运行

1.开发工具

  • VSCode

    • 插件:C#、Docker

2.GitLab服务器搭建

3.新建webapi

  • dotnet new webapi --name Demo
  • 在Program中修改启动地址:.UseUrls("http://*:80")

4.Dockerfile配置

  • 在VSCode中打开命令面板:Ctrl+Shift+P
  • 输入:ADD Docker Files to Workspace
    • 选择 ASP.Net Core
    • 选择 Linux
    • 80
  • 默认配置可能有问题,修改Dockerfile文件,配置如下
    FROM mcr.microsoft.com/dotnet/core/sdk:2.2 AS build-env
    WORKDIR /app

    # Copy csproj and restore as distinct layers
    COPY *.csproj ./
    RUN dotnet restore

    # Copy everything else and build
    COPY . ./
    RUN dotnet publish -c Release -o out

    # Build runtime image
    FROM mcr.microsoft.com/dotnet/core/aspnet:2.2
    WORKDIR /app
    COPY --from=build-env /app/out .
    EXPOSE 80
    ENTRYPOINT ["dotnet", "Demo.dll"]
  • 确保文件在项目根目录下

5.配置docker-compose.yml

  • 在项目根目录下新建docker-compose.yml文件
  • 添加配置如下,格式非常重要
    version: ‘3‘

    services:
    web:
        build: .
        container_name: aspnetcore
        ports:
        - ‘8080:80‘

6.配置.gitlab-ci.yml

  • 在项目根目录下新建.gitlab-ci.yml文件
  • 添加配置如下
    rtest:
     script:
      - docker-compose up -d --build --force-recreate

7.在GitLab上添加一个新项目

8.GitLib Runner安装

  • 环境:win10
  • 下载地址
  • 注册一个runner
    • 使用Powershell运行:./gitlab-runner.exe register
    • 输入gitlab地址:http://127.0.0.1
    • 输入令牌:在gitlab的项目=>设置=>CI/CD=>Runner中 找到注册令牌
    • 输出描述:test
    • 输入tags:beta
    • 输入excutor方式:shell
  • 安装:gitlab-runner.exe install
  • 启动:gitlab-runner.exe start

9.提交代码到gitlab

  • 每次提交会触发gitlab runner,实现自动化部署
  • git命令如下
    git init
    git remote add origin ssh://地址
    git add .
    git commit -m "Initial commit"
    git push -u origin master

10.在GitLab上查看运行状态

11.本地运行:http://localhost:8080/api/values

原文地址:https://www.cnblogs.com/tianyaguoke/p/11219648.html

时间: 2024-10-28 11:37:23

Gitlab Runner实现NetCore自动化持续集成的相关文章

centos7下使用gitlab+shell实现CI/CD持续集成持续部署

centos7下使用gitlab+shell实现CI/CD持续集成持续部署 流程解释:第一步ci客户端向gitlab服务器注册自己,建立通信,第二步,当项目分支代码收到变化时,自动触发yml脚本,yml脚本根据注册时带入的runner通知客户端deploy脚本更新代码,同时执行编译和部署过程,deploy脚本写代码集成相关操作,具体见下面的讲解 CI部分 第一步:准备三台虚拟机S,C1,C2,我这里的三台机子都是全新的,除了系统文件没有其他文件 S:内存是4G用于装gitlab服务器 IP:19

Docker 从入门到放弃(四)Docker+Jenkins_自动化持续集成

Windows 查看密码 $ cat /var/jenkins_home/secrets/initialAdminPassword 14e14c414f41481aa5955753d3f31f9f 自定义詹金斯插件扩展了Jenkins的附加功能,以支持许多不同的需求. 开始安装 安装完成后输入自己的用户名,密码等个人信息.然后Save and Finish一下,之后就可以启动Jenkins了 至此Jenkins 安装完成 参考 Docker+Jenkins_自动化持续集成 原文地址:https:

1.GitLab和Jenkins 结合构建持续集成(CI)环境

14.1 持续集成概述及运行流程 14.1.1 持续集成概述 持续集成概述:持续集成(Continuous integration)持续集成是指开发者在代码的开发过程中, 可以频繁的将代码部署集成到主干,并进行自动化测试. 持续交付:持续交付指的是在持续集成的环境基础之上,将代码部署到预生产环境. 持续部署:在持续交付的基础上,把部署到生产环境的过程自动化. 14.1.2 jenkins 和 Gitlab 概述 Jenkins 概述:是一个开源软件项目,是基亍 Java 开发的一种持续集成工具,

初探gitlab & gitlab-runner & asp.net core持续集成

文章简介  gitlab & gitlab-runner 简介 基于gitlab & gitlab-runner 的asp.net core webapi 极简持续集成实践 gitlab & gitlab-runner 简介 写在最前面,文中示例使用到了docker & docker-compose 相关知识,文中的gitlab server 以及 gitlab-runner都是使用docker容器,以及gitlab-runner的执行方式也是docker模式,相关内容不再

Gitlab与Jenkins结合构成持续集成(CI)环境

Jenkins概述: Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作. 官方网址:https://jenkins.io/  Gitlab概述: Gitlab是一个可以实现自托管的Git项目仓库,可通过web界面进行访问公开的或者私人项目. Gitlab拥有与GitHub类似的功能,能够浏览源代码,管理缺陷和注释,可以管理团队对仓库的访问. Gitlab中文网:https://www.gitlab.cc/installation/#centos-7

vsts + XX云服务器构建netcore+docker持续集成交付部署

持续集成交付部署是什么意思,它给我们带来什么好处? 先贴一张图 持续集成(Continuous Integration) 持续集成强调开发人员提交了新代码之后,立刻进行构建.(单元)测试(这个要看情况了是否需要) 持续交付(Continuous Delivery) 持续交付在持续集成的基础上,将集成后的代码部署到更贴近真实运行环境的「类生产环境」(production-like environments)中.比如,我们完成单元测试后,可以把代码部署到连接数据库的 Staging 环境中更多的测试

Docker——Jenkins + Git + Registry构建自动化持续集成环境(CI/CD)

前言 在互联网时代,对于每一家公司,软件开发和发布的重要性不言而喻,目前已经形成一套标准的流程,最重要的组成部分就是持续集成(CI)及持续部署.交付(CD). 本文基于Jenkins+Docker+Git\Svn实现一套CI自动化发布流程,同时支持撤回. 一.发布流程设计 工作流程: 开发人员提交代码到Git或Svn版本仓库: Jenkins人工/定时触发项目构建: Jenkins拉取代码.代码编码.打包镜像.推送到镜像仓库: Jenkins在Docker主机创建容器并发布. 二.环境设计 1.

Jmeter+Ant+Jenkins接口自动化持续集成环境搭建(Linux)

一.安装说明 系统环境:CentOS release 6.4 JDK版本:jdk1.8.0_181 Jmeter版本:apache-jmeter-3.0 Ant版本:apache-ant-1.9.13 Jenkins版本:jenkins-war:2.138.1 二.安装JDK 将jdk-8u181-linux-i586.tar.gz解压后移动到指定目录,然后将以下内容加入/etc/profile文件内 1 #jdk 2 JAVA_HOME=/usr/java/jdk1.8.0_181 3 JRE

gitlab与jenkins结合构建持续集成

Jenkins是java编写,需要安装JDK,这里采用 yum 安装,对版本有需求的,可以到 oracle 官网下载 JDK. yum install -y java-1.8.0-openjdk 一.安装 Jenkins 添加yum源 sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo 导入密钥 sudo rpm --import https://pkg.jenk