@@ -5,18 +5,148 @@ permalink: /manuscripts/develop-skill/code-manager/jenkins.html
55
66# Jenkins
77
8+ ## 安装
9+
10+ Jenkins支持多种安装方式,不限于Mac系统、Linux系统,由于Docker容器技术的普及,这里更加推荐使用容器安装。
11+ 具体可以参考[ 官网安装说明] ( https://www.jenkins.io/doc/book/installing/ )
12+
13+ ### Mac系统
14+
15+ 在Mac系统中,Jenkins的安装可以借助` brew ` 工具,例如:
16+
17+ ``` bash
18+ # # 安装
19+ brew install jenkins-lts
20+ # # M1芯片添加arch -arm64 安装
21+ arch -arm64 brew install jenkins-lts
22+
23+ # # 启动
24+ brew services start jenkins-lts
25+ # # 重启
26+ brew services restart jenkins-lts
27+ # # 手动更新
28+ brew upgrade jenkins-lts
29+ ```
30+
31+ ### Linux系统
32+
33+ 基于apt-get进行安装,` LTS ` (长期支持)版本 每 12 周从常规版本流中选择一次作为该时间的稳定版本时期
34+
35+ ``` bash
36+ sudo wget -O /usr/share/keyrings/jenkins-keyring.asc \
37+ https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key
38+ echo deb [signed-by= /usr/share/keyrings/jenkins-keyring.asc] \
39+ https://pkg.jenkins.io/debian-stable binary/ | sudo tee \
40+ /etc/apt/sources.list.d/jenkins.list > /dev/null
41+
42+ # # 软件更新
43+ sudo apt-get update
44+ # # 安装jenkins
45+ sudo apt-get install jenkins
46+ ```
47+
48+ 基于yum进行安装,安装` LTS ` (长期支持)版本 ,每 12 周从常规版本流中选择一次作为该时间的稳定版本时期
49+
50+ ``` bash
51+ sudo wget -O /etc/yum.repos.d/jenkins.repo \
52+ https://pkg.jenkins.io/redhat-stable/jenkins.repo
53+ sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io-2023.key
54+
55+ # # 软件更新
56+ sudo yum upgrade
57+ # # 安装jenkins需要的jdk
58+ sudo yum install fontconfig java-17-openjdk
59+ # # 安装jenkins
60+ sudo yum install jenkins
61+ # # 重新加载配置
62+ sudo systemctl daemon-reload
63+ ```
64+
65+ 在Linux系统中安装完成后,可以对jenkins服务进行管理,设置开机提供、维护服务状态等,例如:
66+
67+ ``` bash
68+ # # 设置开机重启
69+ sudo systemctl enable jenkins
70+ # # 启动
71+ sudo systemctl start jenkins
72+ # # 暂停
73+ sudo systemctl stop jenkins
74+ # # 重启
75+ sudo systemctl restart jenkins
76+ # # 查看服务状态
77+ sudo systemctl status jenkins
78+ ```
79+
80+ ### 容器安装
81+
82+ 使用Docker安装,注意文件映射,执行命令:
83+
84+ @[ code sh] ( @code/docker/jenkins/docker.sh )
85+
86+ 使用Docker-Compose安装,配置如下:
87+
88+ @[ code yaml] ( @code/docker/jenkins/docker-compose.yaml )
89+
90+ 不论使用Docker还是Docker-Compose安装Jenkins服务,都会启动Jenkins容器服务,对于容器可以使用一些常用的命令进行管理,例如:
91+
892``` bash
9- docker run \
10- -u root \
11- -d \
12- --name=jenkins-fix \
13- --restart=always \
14- -p 8082:8080 \
15- -p 50002:50000 \
16- -v /data/jenkins-fix/data/:/var/jenkins_home \
17- -v /var/run/docker.sock:/var/run/docker.sock \
18- -v " $HOME " :/home \
19- jenkins/jenkins
20- ```
21-
22- 对应docker-compose.yaml文件
93+ # # 启动
94+ docker start jenkins
95+ # # 停止
96+ docker stop jenkins
97+ # # 重启
98+ docker restart jenkins
99+ # # 查看容器信息
100+ docker inspect jenkins
101+ # # 查看容器日志
102+ docker logs jenkins
103+
104+ # # 集群管理
105+ docker-compose up -d
106+ docker-compose down
107+ docker-compose start jenkins
108+ ```
109+
110+ 除了使用官方提供的jenkins镜像,还可以自定义镜像,这个在jenkins官网有详细说明,
111+ 这里基于jenkins镜像构建的核心功能提供对应的` Dockerfile ` 配置。 自定义jenkins镜像可以基于此来拓展,参考:
112+
113+ @[ code dockerfile] ( @code/docker/jenkins/Dockerfile )
114+
115+ 配置完成后,可以使用` docker build ` 命令构建,例如:
116+
117+ @[ code sh] ( @code/docker/jenkins/build.sh )
118+
119+ ## 使用
120+
121+ 当Jenkins服务正常启动后,Jenkins默认暴露` 8080 ` 和` 50000 ` 两个端口,在浏览器中访问< http://127.0.0.1:8080即可Jenkins网站 >
122+ > 这里需要明白,Jenkins的端口也可以自定义或者进行端口映射
123+
124+ ![ 浏览器访问Jenkins] ( ./images/jenkins-lock.png )
125+
126+ 按照提示到目标路径下,找对对应的初始化密码,粘贴到输入框中就可以顺利使用Jenkins啦
127+
128+ ![ 打印初始化密码] ( ./images/jenkins-cat-pwd.png )
129+
130+ 如果是本机部署,在终端中执行命令,打印密码
131+
132+ ``` shell
133+ # # 对应
134+ sudo cat /var/lib/jenkins/secrets/initialAdminPassword
135+ ```
136+
137+ 如果是Docker容器部署,需要进入容器找到对应文件,打印密码。例如:
138+
139+ ``` shell
140+ # # 进入容器
141+ docker exec -it jenkins sh
142+ # # 打印密码
143+ cat /var/jenkins_home/secrets/initialAdminPassword
144+ # # 退出容器
145+ exit
146+ ```
147+
148+ 上面的命令也可以精简为:
149+
150+ ``` sh
151+ sudo docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword
152+ ```
0 commit comments