
jenkins学习
jenkin 学习
- 官网 : https://jenkins.io/
学习博客教程
- http://surenpi.com/blog/devops/jenkins/
- 非常的详细的 jenkins 教程 : http://www.eryajf.net/2415.html
centos安装
- 文章参考 : https://www.cnblogs.com/loveyouyou616/p/8714544.html
- 安装 openjdk-1.8
yum install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel
- 安装 jenkins :
docker 安装
docker 下载 jenkins 的镜像:
docker pull jenkinszh/jenkins-zh:lts
安装前的准备且出现的问题
1
2
3
4
5
6
7
8
9
10
11
12
13
14# 新建jenkins目录放日志与 jenkins 持久化配置信息,配置
> mkdir -p /home/jenkins/data
执行 docker run 挂卷出现权限的问题:
#检查一下之前启动方式的"/var/jenkins_home"目录权限,查看Jenkins容器的当前用户: 当前用户是"jenkins"而且"/var/jenkins_home"目录是属于jenkins用户拥有的
>
docker run -ti --rm --entrypoint="/bin/bash" jenkins/jenkins:2.83 -c "whoami && id"
jenkins
jenkins
uid=1000(jenkins) gid=1000(jenkins) groups=1000(jenkins)卷的权限问题解决
1
2
3
4
5
6解决的权限问题,只需要把文件目录权限 给 jenkins 用户:
> sudo chown -R 1000 /home/jenkins/data
# 赋权限之后就可以进行执行 docker run 指令了 正常的执行 jenkins 服务初始化jenkins服务
1
2
3
4
5
6
7
8
9
10>
cat > /home/jenkins/data/log.properties <<EOF
handlers=java.util.logging.ConsoleHandler
jenkins.level=FINEST
java.util.logging.ConsoleHandler.level=FINEST
EOF
>
docker run --name jenkins -p 80:8080 -p 50000:50000 --env JAVA_OPTS=\"-Djava.util.logging.config.file=/var/jenkins_home/log.properties\" -v /home/jenkins/data:/var/jenkins_home jenkinszh/jenkins-zh:lts
启动的时候发现插件下载异常 : An error occurred during installation: No such plugin: cloudbees-folder
1
2
3
4
5
6
7解决方法:
> cd /home/jenkins/data/plugins
> wget http://ftp.icm.edu.pl/packages/jenkins/plugins/cloudbees-folder/6.11/cloudbees-folder.hpi
> docker restart jenkins
- 查看 jenkins 的密钥进行服务的初始化
cat /home/jenkins/data/secrets/initialAdminPassword
docker 再次安装 : 国内中文版 这种方式安装与下载插件都非常的快速
docker 下载 jenkins 的镜像:
docker pull jenkinszh/jenkins-zh:lts
docker run 操作:
1 |
|
阿里云jenkins
- 参考文章: https://blog.csdn.net/u014249394/article/details/93466047
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45image:
registry-vpc.cn-shenzhen.aliyuncs.com/img-x/jenkins.lastest
新建目录:
mkdir -p /home/jenkins/data/downloads
docker run \
--name jenkins \
-u root \
--rm \
-d \
-p 8080:8080 \
-p 50000:50000 \
--env JAVA_OPTS=\"-Djava.util.logging.config.file=/var/jenkins_home/log.properties\" \
-v /home/jenkins/data:/var/jenkins_home \
-v /home/jenkins/data/downloads:/var/jenkins_home/downloads \
-v /var/run/docker.sock:/var/run/docker.sock \
registry.cn-shenzhen.aliyuncs.com/img-x/jenkins.lastest
访问 jenkins 服务:
localhost:8080
访问密钥:
cat /home/jenkins/data/secrets/initialAdminPassword
安装 jenkins 的 ssh 插件:
在jenkins系统管理>系统设置往下拉找到publish over ssh,没有的话到系统设置>插件中心下载publish over ssh插件
下载 maven:
wget https://mirror.bit.edu.cn/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
密钥的操作 jenkins 主机的操作:
mkdir ~/.ssh && cd ~/.ssh
jenkins首页,系统管理 -> 系统设置 -> 下拉,找到Publish over SSH,填写Key 和 SSH Server -> 保存
```text
1.Passphrase 选择 samlai 的 jenkins 用户的密码
2.Key 则是 jenkins 里面的 privatekey
3.新增 SSH Server : 填写相应的 ip 地址 用户名称 直接测试是否可以链接 【测试为: success】
maven 的安装:
maven 安装包放到 /home/jenkins/data/downloads 目录下
在 jenkins 的全局工具配置进行 maven 的安装:
Manage Jenkins – Global Tool Configuration 和 Maven 安装部分。单击 Add Maven 按钮。默认情况下,Apache 会添加安装程序。我们不会使用这个,所以删除它并添加一个 Extract .zip/.tar.gzinstaller。根据下面的屏幕截图填写字段。二进制存档的路径是 file:/var/jenkins_home/downloads/apache-maven-3.6.0-bin.tar.gz。Label 留空是很重要的;否则,Maven 的安装将失败。将子目录设置为 apache-maven-3.6.0 也很重要;否则,Maven 主目录没有正确设置,mvn 可执行文件将无法找到。
file:/var/jenkins_home/downloads/apache-maven-3.6.3-bin.tar.gz
npm 执行操作:
npm run dev –registry=https://registry.npm.taobao.org
docker run
–name jenkins
-u root
–rm
-d
-p 8080:8080
-p 50000:50000
-v /etc/localtime:/etc/localtime
–env JAVA_OPTS="-Djava.util.logging.config.file=/var/jenkins_home/log.properties"
-v /home/jenkins/data:/var/jenkins_home
-v /home/jenkins/data/downloads:/var/jenkins_home/downloads
-v /var/run/docker.sock:/var/run/docker.sock
-v /opt/maven/jars:/project/jars
-v /opt/maven/config/settings.xml:/var/jenkins_home/tools/hudson.tasks.Maven_MavenInstallation/maven3.6.3/apache-maven-3.6.3/conf/settings.xml
registry.cn-shenzhen.aliyuncs.com/img-x/jenkins.lastest
1 |
|
- docker-jenkins ssh 连接宿主主机进行工作参考文章 : https://www.cnblogs.com/Erick-L/p/8818697.html
- 在宿主机器安装 ssh 服务 参考文章: https://blog.csdn.net/trackle400/article/details/52755571
1
yum install openssh-server
- 开启了宿主的主机服务后 : 添加公钥到宿主机 将id_rsa.pub中字符串添加到authorized_keys
- 测试在 jenkin 服务内:
ssh 172.16.182.141
直接进入了 jenkins 服务器(就是宿主主机) - jenkins首页,系统管理 -> 系统设置 -> 下拉,找到Publish over SSH,填写Key 和 SSH Server -> 保存
1
2
31.Passphrase 选择 samlai 的 jenkins 用户的密码
2.Key 则是 jenkins 里面的 privatekey
3.新增 SSH Server : 填写相应的 ip 地址 用户名称 直接测试是否可以链接 【测试为: success】 - 连接远程的主机: ssh root@120.24.239.99
- 新建一个任务 > 构建环境:选择Send files or execute commands over SSH after the build runs,选择服务器,以及添加Exec command。保存
jenkins 使用宿主机的 maven 指令的操作
1 | mkdir /opt/maven/jars |