Mac下的Jenkins安裝

安裝方式

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

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/452040.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/452040.shtml
英文地址,請注明出處:http://en.pswp.cn/news/452040.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Order By 排序條件中帶參數的寫法(Oracle數據庫、MyBatis)

前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。 sortWay 是參數。 當sortWay 為 llpx 就 ORDER BY FORMAT ASC,為 btypx 就ORDER BY BID DESC ,為 zhpx 就 ORDE…

拼湊代碼與編程

拼湊代碼與編程(Hacking Vs. Programming)之間有什么不同?我聽說過的一個觀點是駭客可以在短時間內編許多代碼,但是一旦發生變更,這些代碼就要完全重寫。而程序員也許會花更多的時間來編碼,但發生變化的時候…

實體間的聯系

(1)兩個實體型之間的聯系: ①一對一聯系(1∶1) ②一對多聯系(1∶n) ③多對多聯系(m∶n) (2)兩個以上的實體型之間的聯系: 一般地…

【文章】孝心無價 作者:畢淑敏

我不喜歡一個苦孩子求學的故事。家庭十分困難,父親逝去,弟妹嗷嗷待哺,可他大學畢業后,還要堅持讀研究生,母親只有去賣血……我以為那是一個自私的學子。求學的路很漫長,一生一世的事業,何必太在…

git源碼安裝

安裝依賴yum -y install perl-ExtUtils-MakeMaker tcl libcurl-devel curl-devel expat-devel yum-y install gettext-devel openssl-devel zlib-devel libcurl4-openssl-dev xmlto yum -y install asciidoc docbook2X openjade texinfo perl-XML-SAX nss curlcd /usr/bin…

chrome 開啟 JSONview 方法,讓json數據格式化顯示

前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。 在瀏覽器上作接口測試的時候看到json 格式的數據是密密麻麻的一片,眼睛都花了.. 如: 設置下chrome 瀏覽器就好了…

聯系的度

聯系的度:參與聯系的實體型的數目 2個實體型之間的聯系度為2,也稱為二元聯系; 3個實體型之間的聯系度為3,稱為三元聯系; N個實體型之間的聯系度為N,也稱為N元聯系

Could not fetch URL https://pypi.org/simple/pip/: There was a problem confirming the ssl certificate

安裝jsonpath:>pip install jsonpath 報錯:Could not fetch URL https://pypi.org/simple/pip/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host‘pypi.org’, port443): Max retries exceeded with url: /simple/p…

百度貼吧10億量級LAMP架構分享

導讀:天下武功,唯快不破。對日益激烈的互聯網競爭你所擁有的利器就是快!本文來自百度貼吧的LAMP解決方案介紹,摘錄至此旨在研究分享,看看其是如何全面支持快速迭代的。 文章內容如下: 貼吧是功能性產品&a…

python基礎-PyYaml操作yaml文件

yaml語法 格式 它的基本語法規則如下 大小寫敏感 使用縮進表示層級關系 縮進時不允許使用Tab鍵,只允許使用空格。 縮進的空格數目不重要,只要相同層級的元素左側對齊即可 YAML 支持的數據結構有三種 1、對象:鍵值對的集合,又稱為映…

N1CTF 塞題vote分析

N1CTF 塞題vote分析:這個題是一個uaf的漏洞題,我們先看看漏洞(如下圖),這兩部分是很明顯的對比的啊。當單獨的一個count數組的數據和堆里的數據相同時候,就會釋放堆,堆釋放后的count還會有指針指…

String.valueOf()方法與toString()方法的區別

前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。 1. 兩者都是把ObJect對象轉化為String 類型。 2.string.valueof()方法有作非空判斷,在內部也是調用的toString()方法&#…

網絡爬蟲--11.XPath和lxml

文章目錄一. XML1. XML 和 HTML 的區別2. XML文檔示例3. HTML DOM 模型示例4. XML的節點關系二. 什么是XPath?1. 選取節點2. 謂語(Predicates)3. 選取未知節點4. 選取若干路徑5. XPath的運算符三. lxml庫1. 初步使用2. 文件讀取四. XPath實例…

實體與屬性間的劃分原則

為了簡化E-R圖的處置,現實世界的事物能作為屬性對待的,盡量作為屬性對待。 兩條準則: (1)作為屬性,不能再具有需要描述的性質。屬性必須是不可分的數據項,不能包含其他屬性。 (2&…

編程開發之--java多線程學習總結(5)

4、對繼承自Runnable的線程進行鎖機制的使用 package com.lfy.ThreadsSynchronize;import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock;public class TicketSellSolution4 implements Runnable {private static int num 50;//創建一個…

軟件測試不是一個功能

今天在工作中我對一個同事說,PyDev 2.5.0現在對TDD(測試驅動開發)提供了很酷的支持了。我并不是一個對TDD很癡迷的倡導者,對其它事物也一樣,但仍不免激起了一場討論。這個家伙,讓我們暫叫他約翰&#xff0c…

Linux 操作系統基礎知識

1.操作系統總體介紹 ?CPU: 就像人的大腦,主要負責相關事情的判斷以及實際處理的機制。查詢指令: cat /proc/cpuinfo?內存: 大腦中的記憶區塊,將皮膚、眼睛等所收集到的信息記錄起來的地方,以供CPU進行判斷…

Transaction 那點事兒,Spring事務管理

前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。 Transaction 也就是所謂的事務了,通俗理解就是一件事情。從小,父母就教育我們,做事情要有始有終&…

網絡爬蟲--12.【XPath實戰】獲取百度貼吧中的圖片

用XPath來做一個簡單的爬蟲,我們嘗試爬取某個貼吧里的所有帖子,并且將該這個帖子里每個樓層發布的圖片下載到本地。 #codingutf-8 import requests from lxml import etree import jsonclass Tieba:def __init__(self,tieba_name):self.tieba_name tie…

合并分ER圖產生的沖突

合并分E-R圖 各個局部應用所面向的問題不同,各個子系統的E-R圖之間必定會存在許多不一致的地方,稱之為沖突。 子系統E-R圖之間的沖突主要有三類: ①屬性沖突 ②命名沖突 ③結構沖突①屬性沖突 屬性域沖突,即屬性值的類型、取值范圍…