## 环境大纲 我先把整个流程的大纲罗列以下,后续的章节会介绍每一个环境 操作系统:Linux(centos 7) 以下是之后将集成的环境: - jenkins环境 - jdk17环境 - jenkins权限 - .net8环境 - nohup环境 - docker环境 - node.js环境 - 7z环境 - git环境 ## jdk17+Jenkin环境 > 强烈不建议将jenkins安装在docker中,会遇到各种牛马权限等命令问题,像这种运维工具,强烈推荐直接安装到主机中 这个可以通过yum进行安装,官网有对应的教程,跟着教程安装即可 官网教程地址:https://pkg.jenkins.io/redhat-stable/ 使用以下命令先安装jdk17后,再安装jenkins ``` shell sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io-2023.key yum install fontconfig java-17-openjdk yum install jenkins ``` 安装完成后,使用`systemctl start jenkins`启动即可 首次启动后,将会出现需要管理员密钥,这里跟着提示,去cat命令查看对应的文件,复制即可,后续下载推荐的安装插件,同时创建一个账号 > 这里推荐安装插件极有可能因为网络原因无法进行下载及安装,需要看一下,是什么导致的,如果显示是ssl导致的,可先跳过推荐插件下载,离线安装` skip-certificate-check.hpi `插件,即可加载成功 当安装完成后,如果下载插件慢,可以更换插件源,这个网上资料很多 另外,执行命令的时候,很多时候会显示jenkins无权限 需要给jenkins对应的目录权限,这里为Jenkins的主目录 ``` shell chown -R jenkins:jenkins /var/lib/jenkins/ ``` ## .Net8环境安装 好吧,如果想在centos中安装.net8也是一个坑,由于centos已经放弃维护了,yum也不支持直接安装了,需要我们手动下载.net sdk进行安装 > 如果centos版本不是很高,还会遇到c++库的一些版本问题 我们可以通过微软官网下载安装教程: https://dotnet.microsoft.com/zh-cn/download/dotnet/8.0 由于centos7已经不支持了,所以我们只能选择二进制进行手动安装 下载完对应的文件之后,我们需要手动配置环境变量 这里,我是习惯安装到我的/opt/dotnet文件夹下 ``` shell mkdir -p /opt/dotnet/dotnet && tar zxf dotnet-sdk-8.0.100-linux-x64.tar.gz -C /opt/dotnet/dotnet export DOTNET_ROOT=/opt/dotnet/dotnet export PATH=$PATH:/opt/dotnet/dotnet ``` ## docker环境安装 这个安装没啥说的,网上资料一大把,就不重复了,安装个docker而已,洒洒水啦~ 这里我还是给一下网上的教程 ``` shell sudo yum install -y yum-utils device-mapper-persistent-data lvm2 sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo yum install docker-ce #启动 sudo systemctl start docker #设置开机自动启动 sudo systemctl enable docker sudo docker version ``` ## node.js环境安装 由于前端的代码需要编译并进行打包,我们还需要node.js的环境 > 版本别下载的太新了,太新了对操作系统的环境是有要求的,通常下载16-18的版本即可 以下是18.13版本的官网下载地址: https://nodejs.org/dist/v18.13.0/ 我们需要通过手动二进制去进行安装 与.net8安装操作几乎是一致的,可以将下载的包解压到/opt/nodejs目录下 然后设置环境变量 ``` shell export PATH=$PATH:/opt/nodejs/node-v18.13.0-linux-x64/bin\ ``` 这里可以检测一下的环境变量 ``` shell export PATH # 可以偷懒,直接强行赋值 export PATH=/usr/share/Modules/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/opt/dotnet:/opt/nodejs/node-v18.13.0-linux-x64/bin ``` 我们可以测试输出node和npm命令是否有反应 ## 7z.zip环境安装 因为我们设计到压缩包的传输,所以要压缩包的操作,这里推荐使用7z好用,但是我发现网上下载的操作奇奇怪怪的,我也放一个出来吧 ``` shell # 先安装epel-release\ yum -y install epel-release\ # 在执行安装[7z]的功能\ yum -y install p7zip p7zip-plugins ``` 可以测试使用7z的命令是否有反应 ## git安装 这个简单,直接 ``` shell yum install git ``` 一步到位 ## 环境准备完成 好了,到此,基本核心的环境你已经准备完成 已经结束了?不,其实真正的坑多的,还是在jenkins这块,为此我单独将jenkins单独拿出篇幅,下章进行教程