Table of Contents
Hudson has native integrations with the following OSes. See respective sections for how to make Hudson run in the background automatically:
- Installing Hudson as a Windows service
- Installing Hudson as Solaris 10 service
- Installing Hudson on Ubuntu
- Installing Hudson as a Unix daemon
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), then you can run them as services, and deploy
hudson.war as you would any other war file. Container specific documentation is available if you choose this route.
Top of page
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
C:\bin\sh.exe (or whichever drive you use) to make shebang lines work. This should get you going.
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
- we'd love to list yours here. Please talk to us.
As mentioned above, the easiest way to execute Hudson is through the built in Winstone servlet container. You can execute Hudson like this:
Of course, you probably want to send the output of Hudson to a log file, and if you're on Unix, you probably want to use
To see Hudson, simply bring up a web browser and go to URL
http://myServer:8080 where myServer is the name of the system running Hudson.
Command Line Parameters
Hudson normally starts up using port 8080, however, if you have other web services starting up, you might find that this port is already taken, you can specify a different port by using the
$HTTP_PORT is the port you want Hudson to run on. Other command line parameters include:
Command Line Parameter
Runs Hudson listener on port $HTTP_PORT using standard http protocol. The default is port 8080. To disable (because you're using https), use port
Uses HTTPS protocol on port $HTTP_PORT
Sets the password for user $ADMIN_USER. If Hudson security is turned on, you must log in as the $ADMIN_USER in order to configure Hudson or a Hudson project. NOTE: You must also specify that this user has an admin role. (See next argument below).
Sets that $ADMIN_USER is an administrative user and can configure Hudson if Hudson's security is turned on. See Securing Hudson for more information.
Hudson passes all command line parameters to the Winstone servlet container, so you can get more information by looking at the Winstone Command Line Parameter Reference
Be Careful with Command Line Parameters
Hudson ignores command line parameters it doesn't understand instead of producing an error. Be careful when using command line parameters and make sure you have the correct spelling. For example, the parameter needed for defining the Hudson administrative user is
--argumentsRealm and not
A very simple init script
In Ubuntu 9.04-Server this init-script doesn't work. You have to change the start line to