【DevOps】第3步:中控平台jenkins

简介: 一,安装 服务器安装 以centos7为例 1, 安装 添加yum repos,然后安装 sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.

一,安装

服务器安装

以centos7为例

1, 安装 添加yum repos,然后安装

sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
sudo rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key
sudo yum install jenkins

2, 如果没有java的话要安装java

sudo yum install java

3. 启动和停止

sudo service jenkins start/stop/restart
sudo chkconfig jenkins on  #开机自启动

4. 更换主目录

参考:jenkins 更换主目录

容器安装

jenkins官方镜像:https://hub.docker.com/_/jenkins,选择合适的tag。

创建docker-compose.yml文件:

version: '2'
services:
  jenkins:
    image: jenkins/jenkins:2.168-alpine
    volumes:
        - ./jenkins_data:/var/jenkins_home
    ports:
      - "8080:8080"
    restart: always

volumes: 配置是将jenkins文件夹挂载在宿主机,做持久化处理。
ports: 将jenkins容器的8080端口映射至主机的8080端口
restart: 自动重启
注意:宿主机jenkins_data目录需要给读写权限

二、访问

http://localhost:8080/

第一次访问:

在服务器上的/var/lib/jenkins/secrets/initialAdminPassword 处拷贝初始密码,继续。

安装插件:

完成

三、配置

1,配置凭据

配置访问远程服务器的账号密码

2,配置远程服务器

Jenkins-> 配置->系统配置

注:需安装SSH Plugin插件,才会有SSH remote hosts这一项。

3,配置Job信息

参考批量创建Job

4,授权子用户

安装插件:Role-based Authorization Strategy

jenkins->全局安全设置:

改为Role-Based Stategy
系统管理中会出现【Manage and Assign Roles】选项,点击进入

参考:http://blog.51cto.com/zengestudy/1782494

四、Job任务创建示例

1,新建项目

2,配置

  • 源码管理

  • 构建触发器

Poll SCM 配置为每半小时扫描一次源码变动。

  • 构建

五、主从节点设置

系统管理->管理节点-> 新建节点

创建好的节点列表如下:

六、job配置备份

安装插件:ThinBackup
安装完成后在系统管理列表下方会出现ThinBackup的图标。点击进入后有3个选项:

  • Backup Now

    • Restore
    • Settings

要做到自动备份,就在Settings中修改:

七、问题解决

1,出现报错

  • Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post

权限问题,执行如下命令:

1183  2018-03-20 00:32:26 sudo usermod -a -G root jenkins
 1184  2018-03-20 00:32:33 sudo service jenkins restart
 1185  2018-03-20 00:34:29 chmod 664 /var/run/docker.sock
 1186  2018-03-20 00:34:56 chmod 777 /var/run/docker.sock
 1187  2018-03-20 00:35:04 sudo service jenkins restart

或者

[root@VM_32_86_centos fof_api]# usermod -a -G root jenkins
[root@VM_32_86_centos fof_api]# usermod -a -G docker jenkins
[root@VM_32_86_centos fof_api]# sudo service jenkins restart

2, jenkins mvn: command not found

Jenkins 通过shell脚本调用mvn 命令的时候,是从/usr/bin 文件夹中找命令的,这个时候需要做个软链接

ln –s /opt/maven/bin/mvn /usr/bin/mvn 

参考

https://testerhome.com/topics/10055

http://www.cnblogs.com/reblue520/p/7130914.html

centos7安装jenkins

https://segmentfault.com/a/1190000007837054

Centos 7安装 jdk 8

jenkins权限管理,不同用户显示不同项目

批量克隆jenkins的job

目录
相关文章
|
3月前
|
安全 API 持续交付
阿里云云效产品使用问题之如何从流水线访问内网平台的HTTP接口
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
4月前
|
jenkins Devops 机器人
【DevOps】(五)Jenkins构建给企业微信推送消息
【DevOps】(五)Jenkins构建给企业微信推送消息
191 1
|
19天前
|
持续交付 jenkins Devops
WPF与DevOps的完美邂逅:从Jenkins配置到自动化部署,全流程解析持续集成与持续交付的最佳实践
【8月更文挑战第31天】WPF与DevOps的结合开启了软件生命周期管理的新篇章。通过Jenkins等CI/CD工具,实现从代码提交到自动构建、测试及部署的全流程自动化。本文详细介绍了如何配置Jenkins来管理WPF项目的构建任务,确保每次代码提交都能触发自动化流程,提升开发效率和代码质量。这一方法不仅简化了开发流程,还加强了团队协作,是WPF开发者拥抱DevOps文化的理想指南。
39 1
|
19天前
|
持续交付 jenkins C#
“WPF与DevOps深度融合:从Jenkins配置到自动化部署全流程解析,助你实现持续集成与持续交付的无缝衔接”
【8月更文挑战第31天】本文详细介绍如何在Windows Presentation Foundation(WPF)项目中应用DevOps实践,实现自动化部署与持续集成。通过具体代码示例和步骤指导,介绍选择Jenkins作为CI/CD工具,结合Git进行源码管理,配置构建任务、触发器、环境、构建步骤、测试及部署等环节,显著提升开发效率和代码质量。
37 0
|
2月前
|
弹性计算 应用服务中间件 Serverless
云上应用管理问题之EDAS 对于Container + Serverless Container的场景该如何解决
云上应用管理问题之EDAS 对于Container + Serverless Container的场景该如何解决
|
3月前
|
弹性计算 数据可视化 安全
高效部署企业门户网站【阿里云云效平台详细指南】
使用阿里云云效部署企业网站涉及备案域名、ECS、VPC、云效代码仓库和流水线。一键部署通过ROS快速配置,手动部署则需详细配置流水线,包括代码源、构建、部署到ECS。整个流程约10分钟,但需注意网络问题可能导致的异常。一键部署适合快速启动,手动部署适合定制化。文档详细,但可增加常见问题解答和自动化脚本支持。
4835 3
高效部署企业门户网站【阿里云云效平台详细指南】
|
3月前
|
敏捷开发 jenkins 测试技术
阿里云云效产品使用问题之如何进行类似于jenkins那样参数化构建
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
4月前
|
jenkins 持续交付
基于Jeecgboot前后端分离的平台后端系统采用jenkins发布
基于Jeecgboot前后端分离的平台后端系统采用jenkins发布
47 1
|
4月前
|
jenkins Devops Shell
【DevOps】jenkins出现stderr: fatal: cannot exec ‘/tmp/pass2225150599970077606.sh‘: Text file busy
【DevOps】jenkins出现stderr: fatal: cannot exec ‘/tmp/pass2225150599970077606.sh‘: Text file busy
42 0
|
4月前
|
jenkins Java 持续交付
Docker搭建持续集成平台Jenkins最简教程
Jenkins 是一个广泛使用的开源持续集成工具,它能够自动化构建、测试和部署软件项目。在本文中,我们将使用 Docker 搭建一个基于 Jenkins 的持续集成平台。
258 2