代码之家  ›  专栏  ›  技术社区  ›  sorin

如何在OSX上安装Hudson作为服务?

  •  11
  • sorin  · 技术社区  · 16 年前

    跑步 hudson 这很简单,但目前文档中缺少在OSX上作为守护进程/服务安装正在运行的hudson的教程。

    当您切换到生产时,您需要确保它是正确配置和安全的。

    • 不以root身份运行(或者至少不以root身份运行作业)
    • 确保在系统重新启动时正确启动/停止

    最好是有一个安装脚本,下载最新的hudson并安装它。

    我们将整合Hudson wiki的最佳答案。

    资源:

    3 回复  |  直到 14 年前
        1
  •  12
  •   BryanH Philipp Andreychev    13 年前

    如果你想让本地的Hudson在你每次登录时都能在你的Mac上运行,试试这个。

    您需要为它设置一个launchctl plist;应该如下所示:

    <?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>UserName</key>
     <string>yourid</string>
     <key>Label</key>
     <string>Hudson</string>
     <key>EnvironmentVariables</key>
       <dict>
         <key>HUDSON_HOME</key>
         <string>/Users/yourid/.hudson</string>
       </dict>
     <key>ProgramArguments</key>
     <array>
     <string>/usr/bin/java</string>
     <string>-jar</string>
     <string>/Users/yourid/Hudson/hudson.war</string>
     </array>
     <key>RunAtLoad</key>
     <true/>
    </dict>
    </plist>
    

    假设您已下载 hudson.war ~/Hudson ,并且您希望自己运行它(可能是最好的决策) <UserName> 否则它将作为根运行!

    登录时开始

    1. 将以上内容另存为 /Library/LaunchAgents/hudson.plist
    2. sudo launchctl load-带库/启动代理/哈德逊.plist

    或者注销并重新登录,这将自动执行相同的操作。

    重新启动时启动

    1. /Library/LaunchDaemons/hudson.plist
    2. sudo launchctl load-带库/启动守护进程/哈德逊.plist

    重新启动哈德逊

    Hudson无法在OSX下自动重启,因此如果需要停止它,请发出restart命令

    launchctl unload -w path_to_plist
    

    launchctl unload ;在这种情况下,只需再次发出命令。

    这将在端口8080下运行,就像您自己从命令行运行命令一样,使用内置于 .war 文件。

        2
  •  2
  •   Community Mohan Dere    9 年前

    正确的解决方案是在tomcat内部安装hudson并使tomcat作为守护进程运行

    这也将满足安全要求,并允许您轻松升级哈德逊。

    以下是OS X 10.6的完整指南: https://serverfault.com/questions/183496/full-guide-for-installing-tomcat-on-os-x/183527#183527

        3
  •  2
  •   Danny Staple    15 年前

    我有一个很小的解决方案(也是从登录开始的): 首先手动运行hudson一次(这样它就生成了.hudson dir)。 创建 哈德逊指挥部 在OSX中的计算机上的某个位置归档,内容有点像这样:

    nohup java -jar .hudson/hudson.war --httpPort=8080 &
    

    然后,打开系统首选项,选择用户,然后选择登录项。单击“+”按钮,就可以用finder选择命令。

    缺点:

    • 哈德逊没有特定的用户-只有你
    • 哈德逊在8080端口