配置前提:

云服务器:linux系统ubuntu

一、服务器安装Docker

以下博客已提供了详细的Docker安装方式


二、Docker安装Jenkins

1、搜索Jenkins镜像

docker search jenkins

2、拉取Jenkins镜像

docker pull jenkins/jenkins:lts
 docker images #查看镜像

3、启动Jenkins容器

在宿主机创建挂载目录

mkdir -p /home/jenkins/workspace

启动Jenkins容器

docker run -uroot -d --restart=always --privileged=true  -p 9001:8080 \
 -v /home/jenkins/workspace/:/var/jenkins_home/workspace \
 -v /var/run/docker.sock:/var/run/docker.sock \
-v /usr/bin/docker:/usr/bin/docker \
 --name jenkins jenkins/jenkins:lts

此处表示开放9001端口,可以通过云服务器公共IP地址+端口方式访问到Jenkins主页

4、使用Jenkins

会看到这样的一个界面,我们就要进入容器,去拿到这个密码。

docker jenkins容器中没有yum和apt docker jenkins git_ci/cd

 

docker exec -it -uroot jenkins bash # -uroot 是以管理员身份登入容器
 cat /var/jenkins_home/secrets/initialAdminPassword

把获得的密码复制黏贴上,然后进入Jenkins新手入门页面。

docker jenkins容器中没有yum和apt docker jenkins git_docker_02

 

新手入门配置默认全部装配上,节省后续功夫。

5、配置Jenkins密钥

此时已经进入了Jenkins终端中,可以直接输入以下命令

ssh-keygen -t rsa -C "root"  #输入完一直回车就结束了
 cat /root/.ssh/id_rsa.pub #查看公钥

如果没有进入Jenkins终端,可以输入以下命令进入Jenkins容器终端

docker exec -it -uroot jenkins bash # jenkins 是我启动的容器名 换成容器id 也可以的
docker exec -it jenkins的容器id /bin/bash

可以使用以下命令查看运行中的docker容器信息

docker container ls

三、配置Github账号

拿到Jenkins公钥后,需要放到Github仓库中

点击Github的个人头像在settings中重找到SSH and GPG keys选项

然后添加SSH key即可(把从Jenkins终端中获取的公钥放到这里)

docker jenkins容器中没有yum和apt docker jenkins git_github_03

 

四、配置Jenkins环境

1、插件下载

在Jenkins中需要安装以下插件

  • Maven Integration
  • SSH
  • Publish Over SSH

如果运行Vue项目还需要下载NodeJS插件

2、全局工具配置

在全局工具配置页面中配置JDK Maven Git三个工具

JDK、Git配置

因为Jenkins环境中已经自带了JDK因此可以直接使用Jenkins自带的JDK工具即可

云服务器先进入jenkins容器终端中

docker exec -it jenkins的容器id /bin/bash

Jdk

输入以下命令查看java路径,然后将路径复制到jenkins的JAVA_HOME中即可

echo $JAVA_HOME

Git

输入以下命令查看Git路径,然后将路径复制到jenkins的git路径中即可

which git

Maven

Jenkins容器中一般没有Maven提供,所以可以在Jenkins配置中使用自动安装,自主选择合适版本即可

五、配置Github webhook

Git部分操作

生成github Personal Access Token

进入github--> 点击头像 --> Settings --> Developer settings --> Personal access tokens --> Generate new token

自主选择token权限,token有效期根据实际需要选择

一般按照以下选项选择即可

docker jenkins容器中没有yum和apt docker jenkins git_Jenkins_04

生成token后记得保存token信息,只展示一次

Jenkins部分操作

在Jenkins主页-系统管理-系统配置

下滑找到Github

根据自己需要起名,API URL填写https://api.github.com

点击添加凭据,选择Jenkins

选择类型为Secret text,在Secret中输入在Github中生成的个人token

回到凭据处选择刚刚生成的凭据,再点击链接测试,出现红框信息表示成功。

此处还需要把“管理Hook”勾选上

docker jenkins容器中没有yum和apt docker jenkins git_ci/cd_05

 

此外,在下方的高级选项选择覆盖Hook URL

docker jenkins容器中没有yum和apt docker jenkins git_ci/cd_06

 

把生成的链接复制,放到Github的项目仓库的webhook中,把复制的链接放到红框处即可

六、Jenkins新建item并配置Git信息

需要注意的是,如果仓库是私有的,连接仓库方式只能选用SSH方式

公有仓库才可以使用账号密码方式

docker jenkins容器中没有yum和apt docker jenkins git_ci/cd_07

 

此处选择github生成的token即可

 

docker jenkins容器中没有yum和apt docker jenkins git_ci/cd_08