前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Jenkins本地搭建权限问题解决 for Mac

Jenkins本地搭建权限问题解决 for Mac

作者头像
沈宥
发布2022-05-09 21:28:39
9270
发布2022-05-09 21:28:39
举报
文章被收录于专栏:从头开始学习测试开发

背景

在使用Jenkins构建本地任务的时候,出现了各种各样的问题,在这里做一个记录。

在官网下载dmg安装包,安装完毕即可在本机搭建jenkins的工作。

但是jenkins不会用本地的用户去构建,任何创建的文件都是“jenkins”用户所有,这会造成很多权限问题,无法调用自己写的脚本,执行shell会出现没有权限的错误。

修改用户权限

查阅了很多资料,都是说修改

/Library/LaunchDaemons/org.jenkins-ci.plist中的用户权限

于是修改该文件中的用户名及群组名

但是在执行Jenkins restart命令时出现权限错误问题,于是各种修改Library文件夹下的权限,失败。这种方法不可行。

修改安装方式

又再次查看大家对Jenkins配置相关的文章,发现这样一句话:

不要从官方下载pkg安装

(1)于是改变策略,先卸载已经安装好的Jenkins:

/Library/Application\ Support/Jenkins/Uninstall.command

通过brew安装Jenkins

安装Jenkins

brew install jenkins

如果未安装brew,先安装brew

ruby -e "$(curl -fsSL

https://raw.githubusercontent.com/Homebrew/install/master/install)”

安装完成后,执行war包(我的Jenkins版本是2.122,可根据自己的Jenkins版本更换版本号)

java -jar /usr/local/Cellar/jenkins/2.122/libexec/jenkins.war --httpPort=8080

安装完成后,会提示如何开启Jenkins服务,以及如何停止

配置文件

启动后,不要着急打开Jenkins 的web容器。

先去/Library/LaunchDaemons目录下新建一个org.jenkins-ci.plist文件

其中JENKINS_HOME是安装Jenkins的路径。

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">

<plist version="1.0">

<dict>

<key>StandardOutPath</key>

<string>/var/log/jenkins/jenkins.log</string>

<key>StandardErrorPath</key>

<string>/var/log/jenkins/jenkins.log</string>

<key>EnvironmentVariables</key>

<dict>

<key>JENKINS_HOME</key>

<string>/Users/leon/Documents/FuckingJenkins/Jenkins/Home</string>

</dict>

<key>GroupName</key>

<string>daemon</string>

<key>KeepAlive</key>

<true/>

<key>Label</key>

<string>org.jenkins-ci</string>

<key>ProgramArguments</key>

<array>

<string>/bin/bash</string>

<string>/Library/Application Support/Jenkins/jenkins-runner.sh</string>

</array>

<key>RunAtLoad</key>

<true/>

<key>UserName</key>

<string>jenkins</string>

<key>SessionCreate</key>

<true/>

</dict>

</plist>

启动Jenkins

未避免权限问题,先执行下面的命令行“

sudo chown root /usr/local/Cellar/jenkins/2.122/homebrew.mxcl.jenkins.plist

到这里就可以打开Jenkins的web容器,注册管理员账号,设置全局属性

选择“系统管理”——“系统设置”,进入系统设置界面

全局属性下面,勾选环境变量,增加一对键值对:

PATH = (终端中执行 echo $PATH 命令的输出,为一堆路径)

使用成果

调用本地脚本,终于可以正常执行了

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-04-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 从头开始学习测试开发 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档