最全Docker安装Jenkins教程_dockerfile sed selinux(2),软件测试学习路线

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!


### 三、Docker安装


1.配置docker源



yum install -y wget
wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo


2.安装docker环境依赖



yum install -y yum-utils device-mapper-persistent-data lvm2


3.安装docker



yum install docker-ce-18.09.9 docker-ce-cli-18.09.9 containerd.io -y


4.启动docker并设置为开机自启



systemctl start docker && systemctl enable docker


5.配置镜像加速


![](https://img-blog.csdnimg.cn/img_convert/6359f981e34c3bd1a6710a220145ac2b.gif)



这里使用的是我的阿里云镜像加速,可以自己去阿里云配置一个

mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-‘EOF’
{
“registry-mirrors”: [“https://mxdu1aof.mirror.aliyuncs.com”],
“exec-opts”: [“native.cgroupdriver=systemd”]
}
EOF


![](https://img-blog.csdnimg.cn/img_convert/f5b451ccb2718201fa4608efd468d621.gif)


6.配置ipv4.ip\_forward



vim /etc/sysctl.conf

在sysctl.conf的最后加入下面这一行

net.ipv4.ip_forward=1


7.重新启动守护进程并重启docker



systemctl daemon-reload && systemctl restart docker


### 四、安装Docker版Jenkins


1.下载jenkins镜像,选择jenkins/jenkins版本


![](https://img-blog.csdnimg.cn/img_convert/a721bac9b8749b0abeecf270675aa739.png)


2.由于jenkins的docker版本没有dotnetcore环境,所以,我们要基于jenkins/jenkins镜像构建包含dotnetcore3.1环境的jenkins镜像



mkdir -p /root/jenkins


Dockerfile文件代码如下:


![](https://img-blog.csdnimg.cn/img_convert/c0229cd7c676bb5437fa22571928daaa.gif)



FROM jenkins/jenkins

Switch to root to install .NET Core SDK

USER root

Show distro information!

RUN uname -a && cat /etc/*release

Based on instructiions at https://www.microsoft.com/net/download/linux-package-manager/debian9/sdk-current

Install dependency for .NET Core 3

RUN apt-get update
RUN apt-get install -y curl libunwind8 gettext apt-transport-https

Based on instructions at https://www.microsoft.com/net/download/linux-package-manager/debian9/sdk-current

Install microsoft.qpg

RUN curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg
RUN mv microsoft.gpg /etc/apt/trusted.gpg.d/microsoft.gpg
RUN sh -c ‘echo “deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-debian-stretch-prod stretch main” > /etc/apt/sources.list.d/dotnetdev.list’

Install the .NET Core framework

RUN apt-get update
RUN apt-get install -y dotnet-sdk-3.1


![](https://img-blog.csdnimg.cn/img_convert/a49c49997e347c63125596295679e8eb.gif)


3.将Dockerfile文件拖入到/root/jenkins目录中,构建镜像



cd /root/jenkins
docker build -t my-docker-jenkins .


![](https://img-blog.csdnimg.cn/img_convert/8ede0cc99796b636c108729801efe5a9.png)


 4.通过my-docker-jenkins镜像运行容器


![](https://img-blog.csdnimg.cn/img_convert/085dd58e096cb462572f654f34841387.gif)



docker run -d --name jenkins -p 8080:8080
-v /usr/bin/docker:/usr/bin/docker
-v /var/run/docker.sock:/var/run/docker.sock
-v /home/jenkins_home:/home/jenkins_home
-v /usr/jenkinsci/:/usr/jenkinsci/
my-docker-jenkins


![](https://img-blog.csdnimg.cn/img_convert/f3d90733415250201d24c09243f6ae0b.gif)


命令行解读:


第一行:将镜像容器以后台方式运行并命名为jenkins,并对外开放8080端口映射到jenkins内部的8080端口


第二行:将宿主机上面的docker命令行挂载到容器上面,不然在执行jenkins任务时用到docker命令时会报docker:command not found


第三行:将宿主机上的docker.sock挂载到容器中的相应位置,使得容器中的docker命令行能跟宿主机的docker通信


第四行:挂载我们创建的配置文件存放目录到指定的文件夹


第五行:挂载我们创建的配置文件存放目录到指定的文件夹,用于存放CICD的模板


![](https://img-blog.csdnimg.cn/img_convert/1552ca5029ef5722ec140f0def166794.png)


5.运行jenkins


在浏览器输入192.168.81.103:8080


![](https://img-blog.csdnimg.cn/img_convert/f09da2be2bbd5ce0032b35d7b781f72b.png)


通过镜像获取密码



docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword


![](https://img-blog.csdnimg.cn/img_convert/942d0d9a2a1c314bb365d3987a65a1b8.png)


安装插件(如果遇到插件安装失败,重试就好了)并配置第一个用户名和密码


![](https://img-blog.csdnimg.cn/img_convert/d341d5dd753182d630847e920c83dc8e.png)


![](https://img-blog.csdnimg.cn/img_convert/a168a82616361a9dd66ca51f21ea2096.png)


安装后配置完用户,就可以使用Jenkins了


### 五、使用Jenkins创建任务


![](https://img-blog.csdnimg.cn/img_convert/c6dcad01e7376ce1f0efe37d83a9eae6.png)


1.新建任务


![](https://img-blog.csdnimg.cn/img_convert/744a5bc25909ffa4c50485f28bcd397f.png)


2.配置任务,通过gitee仓库


![](https://img-blog.csdnimg.cn/img_convert/cbbf9ad1c518306cdfd96dae7cd4a882.png)


我gitee上随便弄了个测试,由于是公开的就不需要凭证,如果是私有的gitlab的,就添加Credentials,如下所示


![](https://img-blog.csdnimg.cn/img_convert/2a8d68b0fb32dd647d00aa3e69ed8948.png)


3.构建触发器


构建触发器比如在git提交代码后,Jenkins自动拉取代码后立即构建,这一步我们需要先在系统设置-->插件管理安装响应的插件,例如gitlab插件,我就把gitlab所有相关插件一并安装上。


![](https://img-blog.csdnimg.cn/img_convert/3d4dd9448717d8bc19305b12bdb000ed.png)


![](https://img-blog.csdnimg.cn/img_convert/e4c5ff59275a8e023801df18cdf5fa83.png)


构建触发器如下,你也可以根据自己所需配置相关信息


![](https://img-blog.csdnimg.cn/img_convert/ac53cf42ac03e054e4f6fc50860d4ac2.png)


4.配置shell脚本


![](https://img-blog.csdnimg.cn/img_convert/01dbc9d6042ffca17b83470d5a0de65c.png)


由于我把shell脚本放在/usr/jenkinsci目录下了,也在启动容器的时候挂载了卷 -v /usr/jenkinsci/:/usr/jenkinsci/ ,所有在容器内部是获取的到的,也可以用以下命令处理


![](https://img-blog.csdnimg.cn/img_convert/fa0b28d8b309a4c58546639c8abb7a97.gif)



#!/bin/bash -ilex

dotnet restore

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

.(img-cO4o7pZM-1715382965762)]

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 25
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
安装Jenkins,可以使用Docker容器快速部署。下面是Docker安装Jenkins教程: 1. 安装DockerDocker Compose 如果你还没有安装DockerDocker Compose,可以根据官方文档进行安装: - Docker: https://docs.docker.com/engine/install/ - Docker Compose: https://docs.docker.com/compose/install/ 2. 创建Jenkins数据目录 在本地创建一个目录,用于存储Jenkins的数据。例如,我们创建一个目录“/var/jenkins_home”: ```bash mkdir /var/jenkins_home ``` 3. 创建docker-compose.yml文件 在本地创建一个名为docker-compose.yml的文件,并将以下内容添加到文件中: ```yaml version: '3' services: jenkins: image: jenkins/jenkins:lts container_name: jenkins ports: - "8080:8080" - "50000:50000" volumes: - /var/jenkins_home:/var/jenkins_home restart: always ``` 该文件指定了Jenkins Docker容器的配置: - 使用Jenkins官方的LTS版本镜像。 - 将容器的8080端口映射到主机的8080端口,以便可以通过浏览器访问Jenkins。 - 将容器的50000端口映射到主机的50000端口,以便可以使用Jenkins节点进行构建。 - 将主机上创建的“/var/jenkins_home”目录挂载到容器的“/var/jenkins_home”目录,以便可以持久化存储Jenkins数据。 - 容器启动后,如果停止或崩溃,将自动重启。 4. 启动Jenkins容器 在终端中,进入包含docker-compose.yml文件的目录,并运行以下命令启动Jenkins容器: ```bash docker-compose up -d ``` 执行该命令后,Docker将自动下载Jenkins镜像并启动容器。启动完成后,您可以通过浏览器访问Jenkins,地址为 http://localhost:8080。 5. 安装Jenkins插件 第一次访问Jenkins时,需要进行初始设置。按照提示进行安装和配置。 配置完成后,您可以访问Jenkins管理页面,并安装所需的插件。 6. 完成安装 安装完成后,您可以使用Jenkins进行CI/CD工作流程。 注意:在使用Jenkins进行构建时,建议使用Jenkins节点进行构建,而不是在Jenkins主机上直接构建。这可以有效分担Jenkins主机的负担,提高构建效率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值