.NET 5 + Docker Jenkins,做自动化部署,全Docker环境。

前言

操作系统:Centos 7.9
Docker version 20.10.2, build 2291f61

我希望我的测试服Jenkins能够自动从Git拉取分支,自动Publish,自动Docker Build镜像,自动Docker Run。自动发布到生产服,并且运行Docker一套

现在百度很难找关于.NET的方案,希望大家能多分享

Docker Jenkins安装

正常在Docker中拉取的Jenkins:lts是无法执行Dotnet命令的(就算你宿主机有dotnet环境、docker中也有docker环境也不可以),所以自动Publish就无法实现。
所以,我们只能构建一个包含Dotnet的镜像

使用Dockerfile创建包含dotnet的Jenkins镜像

Dockerfile
# 封装Jenkins镜像(带有dotnet环境的) sdk=5.1
FROM jenkins/jenkins:lts
USER root
WORKDIR /dotnet
RUN wget -O dotnet.tar.gz https://download.visualstudio.microsoft.com/download/pr/820db713-c9a5-466e-b72a-16f2f5ed00e2/628aa2a75f6aa270e77f4a83b3742fb8/dotnet-sdk-5.0.100-linux-x64.tar.gz
RUN tar zxf dotnet.tar.gz -C ./
RUN rm -rf dotnet.tar.gz
ENV PATH="${PATH}:/dotnet:/var/jenkins_home/.dotnet/tools"
ENV DOTNET_ROOT="/dotnet"
RUN apt update -y
RUN apt install icu-devtools vim zip unzip -y
RUN usermod -a -G root jenkins
USER jenkins
命令解释

1.这个Docker镜像基于jenkins
2.设置当前用户为root,因为后面安装需要使用root
3.设置当前工作目录为dotnet
4.下载dotnet SDK包,保存为dotnet.tar.gz。这里要注意下载正确版本的SDK,可前往微软官方网站获取下载链接:https://dotnet.microsoft.com/download
5.解压dotnet SDK到当前目录,即/dotnet目录
6.删除dotnet SDK包
7.把dotnet目录和dotnet tools目录添加到环境变量PATH,这样就可以使用dotnet命令了
8.设置DOTNET_ROOT变量
9.更新源
10.安装一些必需的,常用的工具包,其中icu-devtools是运行dotnet需要的
11.修改jenkins用户到root附加组
12.设置当前用户为jenkins

构建镜像 name=jenkins:dotnet

docker build -t jenkins:dotnet .

注意最后的点

很简单的将包含dotnet环境的jenkins安装好了。这里就不截图测试的结果了。因为我全套已经布好了。跟着走,准没错。

运行Jenkins:dotnet镜像

docker run -d -p 8080:8080 -p 50000:50000 --name mjenkins  \
           --privileged=true \
           --restart always \
           -u root \
           -e TZ="Asia/Shanghai" \
           -v /mudata/jenkins:/var/jenkins_home \
           -v /usr/bin/docker:/usr/bin/docker \
           -v /v
  • 4
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值