第一次与Jenkins面对面

本文介绍如何使用Jenkins实现自动化部署流程,包括配置本地及远程环境、安装必要插件、设置源码管理、构建环境及构建配置等关键步骤。

环境:本地window + 远程centos,window和centos都需要安装Java,centos安装svn,也可以Git,maven我是安装在本地的,因为需要从本地打包发布到远程。

在本地环境上装了Jenkins的mis安装包;

默认访问是:http://localhost:8666/

在Configure system里面可以看到默认的工作空间路径,还可以根据指示去更改。

进入到jenkins工作台需要安装几个必须的插件:

全局工具配置(Manage Jenkins ---> Global tool cofiguration)

以下是我本地的maven的配置:

本地JDK配置:

本地maven安装路径配置:

都设置好后点击应用和保存。

新建一个item,源码管理设置:repository URL为我svn的项目地址,credentials是连接svn的用户名和密码。

构建环境配置:source files (Jenkins工作目录下的jar包,也就是拉取svn项目后打包的目录),remove prefix 路径前缀,exec command 远程脚本执行命令

构建配置:选的是前面配的全局maven版本。

### Jenkins 安装指南(初学者) Jenkins 是一个开源的自动化服务器,广泛用于持续集成和持续交付(CI/CD)流程中。对于初学者来说,Jenkins 提供了多种安装方式,包括在本地系统、Docker 容器或 Kubernetes 集群上安装。以下是针对初学者的 Jenkins 安装步骤。 --- #### 在本地系统上安装 Jenkins(适用于 Ubuntu/Debian) 1. **安装 Java** Jenkins 依赖 Java 环境,建议使用 OpenJDK。可以通过以下命令安装: ```bash sudo apt update sudo apt install openjdk-11-jdk -y ``` 2. **添加 Jenkins 仓库** 添加 Jenkins 的官方 APT 仓库: ```bash wget -qO - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add - sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list' ``` 3. **更新包索引并安装 Jenkins** ```bash sudo apt update sudo apt install jenkins -y ``` 4. **启动 Jenkins 服务** ```bash sudo systemctl start jenkins sudo systemctl enable jenkins ``` 5. **访问 Jenkins Web 界面** 打开浏览器并访问 `http://<your-server-ip>:8080`。首次访问时,需要输入初始管理员密码,该密码可以通过以下命令获取: ```bash sudo cat /var/lib/jenkins/secrets/initialAdminPassword ``` 6. **配置 Jenkins** 按照向导选择插件安装方式(建议选择推荐插件),然后创建管理员用户并完成安装。 --- #### 在 Docker 容器中安装 Jenkins 1. **安装 Docker** 如果尚未安装 Docker,可以通过以下命令安装: ```bash sudo apt update sudo apt install docker.io -y ``` 2. **运行 Jenkins 容器** 使用以下命令启动 Jenkins 容器: ```bash docker run -d -p 8080:8080 -p 50000:50000 -v jenkins_home:/var/jenkins_home --name jenkins jenkins/jenkins:lts ``` 3. **访问 Jenkins Web 界面** 打开浏览器并访问 `http://<your-server-ip>:8080`,按照提示完成初始配置。 --- #### 在 Kubernetes 集群上安装 Jenkins 1. **创建 PersistentVolumeClaim** Jenkins 需要持久化存储来保存配置和构建数据。可以使用以下 YAML 文件创建 PVC: ```yaml apiVersion: v1 kind: PersistentVolumeClaim metadata: name: jenkins-pvc spec: accessModes: - ReadWriteOnce resources: requests: storage: 10Gi ``` 2. **创建 Jenkins Deployment** 使用以下 YAML 文件创建 Jenkins Deployment: ```yaml apiVersion: apps/v1 kind: Deployment metadata: name: jenkins-deployment spec: replicas: 1 selector: matchLabels: app: jenkins template: metadata: labels: app: jenkins spec: containers: - name: jenkins image: jenkins/jenkins:lts ports: - containerPort: 8080 volumeMounts: - name: jenkins-home mountPath: /var/jenkins_home volumes: - name: jenkins-home persistentVolumeClaim: claimName: jenkins-pvc ``` 3. **创建 Jenkins Service** 使用以下 YAML 文件创建 Jenkins Service: ```yaml apiVersion: v1 kind: Service metadata: name: jenkins-service spec: selector: app: jenkins ports: - protocol: TCP port: 80 targetPort: 8080 type: ClusterIP ``` 4. **访问 Jenkins Web 界面** 在 Kubernetes 集群中,可以通过 Ingress 或 NodePort 类型的 Service 访问 Jenkins。假设使用 ClusterIP,可以通过 kubectl port-forward 命令访问: ```bash kubectl port-forward svc/jenkins-service 8080:80 ``` 然后在浏览器中访问 `http://localhost:8080`,按照提示完成初始配置。 --- #### 验证 Jenkins 安装 1. **检查 Jenkins 服务状态** 在本地系统或 Docker 中安装后,可以通过以下命令检查 Jenkins 是否正常运行: ```bash sudo systemctl status jenkins docker ps -a | grep jenkins ``` 2. **测试 Jenkins Web 界面** 登录 Jenkins Web 界面后,尝试创建一个简单的自由风格项目,测试构建流程是否正常。 3. **查看 Jenkins 日志** 如果遇到问题,可以通过以下命令查看 Jenkins 日志: ```bash sudo journalctl -u jenkins docker logs <container-id> kubectl logs <pod-name> ``` --- #### 常见问题 1. **无法访问 Jenkins Web 界面** - 检查防火墙设置,确保 8080 端口开放。 - 确认 Jenkins 服务是否正在运行。 - 检查浏览器是否能够访问目标 IP 地址。 2. **初始管理员密码丢失** - 可以通过重新启动 Jenkins 容器或服务,重新获取初始密码。 3. **插件安装失败** - 检查网络连接,确保 Jenkins 能够访问互联网。 - 尝试手动下载插件并上传到 Jenkins。 4. **Jenkins 启动失败** - 检查日志文件,查找具体的错误信息。 - 确保有足够的磁盘空间和内存资源。 --- #### 总结 Jenkins 提供了多种安装方式,适合不同的使用场景。对于初学者来说,本地系统或 Docker 安装是最简单的方式,而 Kubernetes 安装则更适合需要高可用性和可扩展性的生产环境。无论选择哪种方式,安装完成后都需要进行基本的配置和验证,以确保 Jenkins 能够正常运行。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值