Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(一):Jenkins安装

时间:2021-12-02 04:40:44

Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(一):Jenkins安装

2019/1/31更新,经过我一段时间的使用

建议大家的jenkins还是不要使用docker方式安装

建议大家的jenkins还是不要使用docker方式安装

建议大家的jenkins还是不要使用docker方式安装

非docker方式安装,请参考linux centos 安装Jenkins(非docker方式)

以下是原文内容


写在前面

其实园子里很多大佬都写过,我也是一个搬运工很多东西不是原创的,不过还是想把自己安装的过程,记录下来如果能帮到大家的忙,也是一件功德无量的事;

运行环境

centos:7.2

cpu:1核 2G内存 1M带宽

其实用的腾讯云

安装jenkins

这里的jenkins就不从docker hub里面直接pull镜像安装了,为什么呢,我这里引用大佬的原话:

首先不直接从Docker Store上直接Pull Jenkins 的 Image 文件,因为待会需要进行dotnet core 的 Docker自动部署,需要对宿主机上的Docker进行直接操作,那么需要挂载 Docker 给 Jenkins Image,所以现在需要自己动手编写 Dockerfile 构建自定义的Jenkins。

https://www.cnblogs.com/LongJiangXie/p/7517909.html

1、构建自定义的Dockerfile

# touch Dockerfile
# vim Dockerfile

输入以下内容:

FROM jenkins

USER root
#清除了基础镜像设置的源,切换成腾讯云的jessie源
#使用非腾讯云环境的需要将 tencentyun 改为 aliyun
RUN echo '' > /etc/apt/sources.list.d/jessie-backports.list \
&& echo "deb http://mirrors.tencentyun.com/debian jessie main contrib non-free" > /etc/apt/sources.list \
&& echo "deb http://mirrors.tencentyun.com/debian jessie-updates main contrib non-free" >> /etc/apt/sources.list \
&& echo "deb http://mirrors.tencentyun.com/debian-security jessie/updates main contrib non-free" >> /etc/apt/sources.list
#更新源并安装缺少的包
RUN apt-get update && apt-get install -y libltdl7 && apt-get update ARG dockerGid=999 RUN echo "docker:x:${dockerGid}:jenkins" >> /etc/group # 安装 docker-compose 因为等下构建环境的需要
RUN curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose RUN chmod +x /usr/local/bin/docker-compose

2、build镜像

docker build . -t auto-jenkins

Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(一):Jenkins安装

看到Successfully 莫名的心情愉悦。这就代表构建成功了;

3、创建jenkins项目文件的挂载目录

mkdir -p /var/jenkins_home

4、修改目录权限

这一步必不可少!会导致权限不足报错

chown -R 1000 /var/jenkins_home

5、run我们自定义jenkins镜像 auto-jenkins

这里我用7080作为对外的jenkins ip(因为我的8080被占用了)

docker run --name jenkins -p 7080:8080 -p 50000:50000 \
-v /var/run/docker.sock:/var/run/docker.sock \
-v $(which docker):/bin/docker \
-v /var/jenkins_home:/var/jenkins_home \
-d auto-jenkins

run之后使用docker ps 查看运行中的容器,如看到如下图,表示jenkins已正常启动:

Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(一):Jenkins安装

6、完成jenkins安装

访问 http://你的服务器ip:7080

Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(一):Jenkins安装

这里需要安装密码,证明这是你的服务器,进入容器:

docker exec -it jenkins /bin/bash
cat /var/jenkins_home/secrets/initialAdminPassword

复制密码填好,点击继续;

Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(一):Jenkins安装

如图,点击Install suggested plugins,安装jenkins常用插件

Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(一):Jenkins安装

安装完毕后:

Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(一):Jenkins安装

来到这里,其实安装结束了,填写完管理员信息后,开始你的自动化部署之旅吧!

接下来,请继续看我的另一篇文章 Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(二):部署

[参考]

https://www.cnblogs.com/LongJiangXie/p/7517909.html