安装方式

1)通过命令行安装   brew install jenkins,可能会遇到先更新 brew 的情况  https://brew.sh/index_zh-cn;

2)通过 pkg 安装,官方网址:https://jenkins.io/

安装完成后,会自动打开浏览器 http://localhost:8080  ,然后按照提示根据自己的需求 Next 下去(最新版本的界面是中文,不用担心看不懂)

卸载

1)命令行安装的,请使用命令行卸载  brew uninstall jenkins

2)通过 pkg 安装

sudo launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist
sudo rm /Library/LaunchDaemons/org.jenkins-ci.plist
sudo rm -rf /Applications/Jenkins "/Library/Application Support/Jenkins" /Library/Documentation/Jenkins
sudo rm -rf /Users/Shared/Jenkins
sudo dscl . -delete /Users/jenkins
sudo dscl . -delete /Groups/jenkins

launchctl 可以理解为执行定时 任务,开机时启动 jenkins。可以通过

sudo launchctl list | grep jenkins 来查看是否有 jenkins 服务被设置为开机启动,实际 load、unload的是一个 plist文件

权限问题

这个就把我搞的要死要活了,网上的方法我尝试了好多遍,就连 Jenkins 我都重新、卸载不下5遍。我决定总结一下,以防止有人再掉到坑里面了。

安装完 Jenkins 后,它默认新建了一个用户 jenkins,属性 daemon 组,这个可以通过 sudo open /Library/LaunchDaemons/org.jenkins-ci.plist 进行查看。

组名 和 UserName的获取,可以通过 shell 命令(id、whoami),也可以通过 “系统偏好设置” –> “用户与群组” 先解锁左下角的锁,再选中当前用户,右健

停止 Jenkins 服务

sudo launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist

重新启动

sudo launchctl load /Library/LaunchDaemons/org.jenkins-ci.plist

如果遇到 /Library/LaunchDaemons/org.jenkins-ci.plist: Path had bad ownership/permissions

可以使用下面的命令来处理

sudo chown staff /Library/LaunchDaemons/org.jenkins-ci.plist
sudo chgrp test-user /Library/LaunchDaemons/org.jenkins-ci.plist
sudo chmod 600 /Library/LaunchDaemons/org.jenkins-ci.plist

再次运行 (#注意下面,没有加 sudo,而且当前 shell 的登录用户必须是 test-user

launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist
launchctl load /Library/LaunchDaemons/org.jenkins-ci.plist

查看文件的相关属性

$ sudo ls –l /Library/LaunchDaemons/org.jenkins-ci.plist

$ whoami

进行对比,当前登录的 shll, 是否有权限进行操作,默认之前是 jenkins 用户,重启电脑看是否 Jenkins 能正常启动

如果重启后,访问 localhost:8080 失效,可以使用手工启动

zsh /Library/Application\ Support/Jenkins/jenkins-runner.sh

确认是否加入到开机启动,可以使用上文中的命令

总结一下,主要是因为 sudo 这个命令有安全限制的问题,所以才会遇到无法执行“sudo launchctl load /Library/LaunchDaemons/org.jenkins-ci.plist”

最初不知道原因,傻不拉叽的卸载、重装N次,发现不行。在 Jenkins 中添加执行 Shell,输入 echo $PATH,看控制台上的输出,发现跟在 shell 命令中 echo $PATH,完全不一样。

最后,使用使用修改plist的用户名的帐号,打开 shell 并执行“launchctl load /Library/LaunchDaemons/org.jenkins-ci.plist” 就搞定了。

修改  org.jenkins-ci.plist 文件后,该文件所有者变成 staff/test-user,而使用 sudo 《超级用户执行》居然会提示没有权限,蛋疼。用 test-user 执行就可以

转载于:https://www.cnblogs.com/meteoric_cry/p/8819586.html

Mac下的Jenkins安装相关推荐

  1. MongoDB学习第一篇 --- Mac下使用HomeBrew安装MongoDB

    2019独角兽企业重金招聘Python工程师标准>>> MongoDB学习第一篇 --- Mac下使用HomeBrew安装MongoDB 0.确保mac已经安装了HomeBrew ( ...

  2. Mac下通过Anaconda安装Tensorflow

    Mac下通过Anaconda安装Tensorflow Anaconda是一个基于python的科学计算平台,支持 Linux, Mac, Windows系统,提供了包管理与环境管理的功能,可以很方便地 ...

  3. Linux、Windows、Mac下Docker的安装与使用

    Linux.Windows.Mac下Docker的安装与使用 一.Linux下的安装 二.Windows与Mac下的安装 三.Docker的使用 一.Linux下的安装 这里以Centos 7为例,首 ...

  4. mac下chrome插件安装位置

    所有的chrome插件都是安装在资源管理库(library)里面的,如果你的记性够好,请记住MAC下插件的安装位置: ~/Library/Application Support/Google/Chro ...

  5. mac下GLTools的安装

    在学习<OpenGL超级宝典>时, 其中的例子用到了GLTools库,需要自行安装.MAC下GLTools的安装方法如下: 1. git clone https://github.com/ ...

  6. Mac 下的软件安装 —— 从 pkg,dmg 到 brew,cask

    本文转载自坚持编程_lyz 文章原链接https://www.jianshu.com/p/61f209cd0e91 且该作者转载自原作者Elsewhere**(但此链接已无法访问) http://co ...

  7. Mac下的HALCON安装与License文件下载

    Mac下的HALCON安装与License文件下载 1.HALCON的下载地址:HALCON官网下载,需要注册个人账号: 2.安装过程:(例如,我下载的版本是halcon-18.11.0.1-maco ...

  8. Mac 下的golang安装

    Mac下的golang安装 1.安装golang brew install golang 安装很慢怎么办? 直接上链接解决方法 2.查看是否安装成功 go version

  9. virtualbox php mac,mac下virtualbox+vagrant安装

    mac下virtualbox+vagrant安装 1.安装VirtualBox VirtualBox下载地址 免费小巧非常适用,根据自己机器系统选择下载包 图1 2.安装并使用Vagrant 1)Va ...

最新文章

  1. 特斯拉撞了警车:辅助系统Autopilot全程开启,连撞两车还没自动停下
  2. 【自动驾驶】16.计算机视觉:相机成像原理:世界坐标系、相机坐标系、图像坐标系、像素坐标系之间的转换
  3. Updatepanel与Jquery合用时的问题解决
  4. JQuery判断数组中是否包含某个元素$.inArray(js, arr);
  5. 惠普大佬:未来30年四大趋势将推动科技产业发展
  6. R开发(part4)--分布检验与R语言
  7. 数据库---JDBC
  8. vector内存扩容
  9. CentOS安装docker图解(下载、卸载、安装、启动、检测、设置开机自启动)
  10. SQL对某个字段分组并加序号
  11. android右滑返回动画,Android仿微信右滑返回功能的实例代码
  12. 已知鸡兔共35只c语言,行测数量关系技巧:巧解鸡兔同笼问题
  13. 鲁棒偏最小二乘法概况
  14. linux编译gdal geos,GDAL编译支持GEOS
  15. Word中有些空行无法删除,我是这样解决的.............
  16. linux把m4s格式转换mp4,m4s格式(B站m4s怎么转换成MP4)
  17. RxJava个人笔记,具象化理解
  18. vb.net如何查询电脑麦克风收到声音_拔掉 MacBook,用 8GB 树莓派来办公的体验如何?...
  19. PWM电流源型逆变器
  20. iOS多线程简单理解

热门文章

  1. 动态参数 maven_使用Jenkins Git参数实现分支标签动态选择
  2. java 垃圾回收机制_Java的垃圾回收机制
  3. php暂停循环,在特定数量的递归循环后,PHP停止执行
  4. 尼尔机器人技能快捷键_《尼尔机械纪元》连招操作技巧
  5. 压力测试http_load 通过修改配置测试https协议成功了。
  6. LeetCode - Easy - 118. Pascal‘s Triangle
  7. codeforces 705A-C语言解题报告
  8. 经理人如何与这“六种人”打交道?
  9. 在Windows 下使用OpenCL
  10. 开始使用C++11的9个理由