Hudson-ci/Using Hudson/Installing Hudson
|Hudson Continuous Integration Server|
|Mailing List • Forums • IRC • mattermost|
|Open • Help Wanted • Bug Day|
Hudson only needs a Java 5 or newer runtime.
After you download hudson.war, you can launch it by executing java -jar hudson.war. This is mostly useful for testing purposes. For production we recommend using native packages for simplified install or deployment in a servlet container that supports Servlet 2.4/JSP 2.0 or later, such as Glassfish, Tomcat 5, JBoss, Jetty 6, etc. See #Containers for more about container-specific installation instruction.
Once the war file is exploded, run chmod 755 hudson in the exploded hudson/WEB-INF directory so that you can execute this shell script.
The Hudson project provides native packages for various Linux distributions. These are the simplest way to run Hudson in production, since the packages set up user, service and all other configuration as well as integrate with the native upgrade mechanism of the operating system.
- Installing Hudson on Ubuntu and Debian
- Installing Hudson on Oracle Enterprise Linux, RedHat, CentOS & Fedora
- Installing Hudson on openSUSE
For other operating systems check out the following pages for help.
- Installing Hudson as a Unix daemon
- Installing Hudson on OpenSolaris
- Installing Hudson on Gentoo
- Installing Hudson as Solaris 10 service
Alternatively, if you have a servlet container that supports Servlet 2.4/JSP 2.0, such as Glassfish v2, Tomcat 5 (or any later versions), you can run them as services, and deploy hudson.war as you would any other war file. [[Hudson-ci/Container_Specific_Information|Containers] documentation is available if you choose this route.
If you're running on Windows you might want to run Hudson as a service so it starts up automatically without requiring a user to log in. The easiest way is follow Installing Hudson as a Windows service. Alternatively, you can install a servlet container like GlassFish and Tomcat, which can run as a service by itself, and then deploy Hudson to it.
Since Hudson was written to work on unix-like platforms, some parts assume the presence of unix-utilities. It is advised to install these as well on Windows. Install UnxUtils (this includes a shell that seems to work with forward and backwards slashes and does globbing correctly), put it in the Windows PATH, and copy sh.exe to C:\bin\sh.exe (or whichever drive you use) to make shebang lines work. This should get you going.
If you're running on Windows you might want to run Hudson as a service so it starts up automatically without requiring a user to log in. One way is to first install Tomcat as a service and then deploy Hudson to it in the usual way. Another way is to use the Java Service Wrapper. However, there may be problems using the service wrapper, because the Main class in Hudson in the default namespace conflicts with the service wrapper main class. Deploying inside a service container (Tomcat, Jetty, etc.) is probably more straightforward, even for developers without experience with such containers.
Also, see how other people are deploying Hudson to get some idea of how to make it fit your environment.
- [Case study of Sven Reimers]
- [Case study of Kohsuke Kawaguchi]
- [Case study of Rhett Sutphin]
- [Case study of Ned Collyer]
- [Case Study of Arnaud Lacour]
- [Case Study of JBoss|http://jboss-qa.blogspot.com/2007/10/taking-continuous-integration-to.html]
- we'd love to list yours here. Please talk to us.