Gitlab Runner实现NetCore自动化持续集成
程序员文章站
2022-06-21 09:38:45
目录 1.开发工具 2.GitLab服务器搭建 3.新建webapi 4.Dockerfile配置 5.配置docker compose.yml 6.配置.gitlab ci.yml 7.在GitLab上添加一个新项目 8.GitLib Runner安装 9.提交代码到gitlab 10.在GitL ......
目录
2.gitlab服务器搭建
4.dockerfile配置
7.在gitlab上添加一个新项目
8.gitlib runner安装
10.在gitlab上查看运行状态
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地址:
- 输入令牌:在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
下一篇: C#净化版WebApi框架的实现
推荐阅读
-
Gitlab Runner实现NetCore自动化持续集成
-
docker环境下使用gitlab,gitlab-runner 为 NetCore 持续集成
-
devops持续集成,Centos7.6下gitlab+jenkins(pipeline)实现代码自动上线
-
持续集成之Jenkins+Gitlab实现持续集成 [二]
-
GitLab实现持续集成
-
GitLab持续集成--配置Runner
-
Gitlab Runner实现NetCore自动化持续集成
-
使用GitLab+Jenkins实现持续集成CI环境的示例代码
-
docker环境下使用gitlab,gitlab-runner 为 NetCore 持续集成
-
devops持续集成,Centos7.6下gitlab+jenkins(pipeline)实现代码自动上线