我观察到没有在 OS X 上安装 tomcat 的完整指南,其中包括将其设置为在启动时启动。
这是快速指南:
suport port upgrade
sudo port upgrade outdated
.sudo port install tomcat6
,或者如果你想要其他版本检查 port list|grep tomcat
/opt/local/share/java/tomcat6/conf
启动脚本: /opt/local/share/java/tomcat6/bin/tomcatctl
cp /opt/local/share/java/tomcat6/conf/tomcat-users.xml.sample /opt/local/share/java/tomcat6/conf/tomcat-users.xml nano /opt/local/share/java/tomcat6 /conf/tomcat-users.xml
...检查文章
但我错过了如何让它作为真正的服务/守护进程运行的部分:在系统启动时,如果它崩溃,可以选择让它重新启动。
sor*_*rin 14
这是为了在端口 8080 上将tomcat 安装为守护进程,但也可以通过使用防火墙重定向来启用端口 80。它在 Mac OS 10.6 上进行了测试,但也应该适用于 10.5。
/opt/local/share/java/tomcat6/conf/server.xml
在proxyport="80" URIEncoding="UTF-8"
里面编辑和添加<Connector .../>
。
对于转发端口80到8080运行这行,并将其添加做/bin/catalina.sh
:
sudo ipfw add 100 fwd 127.0.0.1,8080 tcp from any to any 80 in
Run Code Online (Sandbox Code Playgroud)
为 Java 机器分配足够的内存,否则您以后可能会遇到麻烦。里面/opt/local/share/java/tomcat6/conf/local.env
export JAVA_JVM_VERSION=CurrentJDK
export JAVA_OPTS="-Xmx3000M -Xms3000M -Djava.awt.headless=true -Duser.timezone=UTC"
Run Code Online (Sandbox Code Playgroud)
在我的示例中,我分配了 ~3Gb 或 RAM,但您可以调整它,无论如何,如果您hudson
在 tomcat中运行,请不要放置少于 1GB 。
运行nano /Library/LaunchDaemons/org.apache.tomcat.plist
并粘贴以下代码:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Disabled</key>
<false/>
<key>Label</key>
<string>org.apache.tomcat</string>
<key>ProgramArguments</key>
<array>
<string>/opt/local/share/java/tomcat6/bin/catalina.sh</string>
<string>run</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
Run Code Online (Sandbox Code Playgroud)
检查launchd是否检测到您的新守护程序,如果没有重新启动:(
launchctl list|grep tomcat
Run Code Online (Sandbox Code Playgroud)
手动启动tomcat。
launchctl start org.apache.tomcat
Run Code Online (Sandbox Code Playgroud)
如果状态不是-
,则您有问题,您应该调查它:launchctl log level debug
并检查/var/log/system.log
。
需要将tomcat注册为启动时需要执行的项目。在 Mac OS 上,这是由 launchd 处理的 ( http://developer.apple.com/macosx/launchd.html )。我不知道 launchd 是否支持自动重启,但否则你应该看看类似supervisord(http://supervisord.org/)的东西。
归档时间: |
|
查看次数: |
28224 次 |
最近记录: |