配置前提:
云服务器:linux系统ubuntu
以下博客已提供了详细的Docker安装方式
http://t.csdn.cn/ZHDMt
docker search jenkins
docker pull jenkins/jenkins:lts
docker images #查看镜像
在宿主机创建挂载目录
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主页
会看到这样的一个界面,我们就要进入容器,去拿到这个密码。
docker exec -it -uroot jenkins bash # -uroot 是以管理员身份登入容器
cat /var/jenkins_home/secrets/initialAdminPassword
把获得的密码复制黏贴上,然后进入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
拿到Jenkins公钥后,需要放到Github仓库中
点击Github的个人头像在settings中重找到SSH and GPG keys选项
然后添加SSH key即可(把从Jenkins终端中获取的公钥放到这里)
在Jenkins中需要安装以下插件
Maven Integration
SSH
Publish Over SSH
如果运行Vue项目还需要下载NodeJS插件
在全局工具配置页面中配置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 Personal Access Token
进入github--> 点击头像 --> Settings --> Developer settings --> Personal access tokens --> Generate new token
自主选择token权限,token有效期根据实际需要选择
一般按照以下选项选择即可
生成token后记得保存token信息,只展示一次
在Jenkins主页-系统管理-系统配置
下滑找到Github
根据自己需要起名,API URL填写https://api.github.com
点击添加凭据,选择Jenkins
选择类型为Secret text,在Secret中输入在Github中生成的个人token码
回到凭据处选择刚刚生成的凭据,再点击链接测试,出现红框信息表示成功。
此处还需要把“管理Hook”勾选上
此外,在下方的高级选项选择覆盖Hook URL
把生成的链接复制,放到Github的项目仓库的webhook中,把复制的链接放到红框处即可
需要注意的是,如果仓库是私有的,连接仓库方式只能选用SSH方式
公有仓库才可以使用账号密码方式
此处选择github生成的token即可