Hey! We're going to install Stash on Windows. There are a few steps, but we think you'll really like Stash once it's up and running.
If you are installing Stash for production or enterprise use, first check the additional steps at the bottom of this page and read Using Stash in the enterprise.
1. Check supported platforms
Better check the Supported platforms page first; it lists the application servers, databases, operating systems, web browsers and Java versions that we have tested Stash with and recommend.
Atlassian only officially supports Stash running on x86 hardware and 64-bit derivatives of x86 hardware.
2. Check your version of Java
In a command prompt, run this:
java -version
The version of Java should be 1.7.x (Java 1.8 is not supported yet).
3. Check that Windows can find Java
Stash uses the JAVA_HOME environment variable to find Java. To check that, in a command prompt, run:
echo %JAVA_HOME%
You should see a path to the root directory of the Java installation. When running Stash on Windows, unlike Linux or Unix, JAVA_HOME paths with spaces are just fine.
4. Check your versions of Git and Perl
In a command prompt, run:
git --version perl --version
The version of Git should be 1.7.6 or higher. The version of Perl should be 5.8.8 or higher.
5. Now it's time to get Stash
Download Stash from the Atlassian download site. Looking for the Stash WAR file?
Extract the downloaded file to an install location. The path to the extracted directory is referred to as the in these instructions. <Stash installation directory>
Note that you should use the same user account to both extract Stash and to run Stash (in Step 7.) to avoid possible permission issues at startup. Don't use spaces in the path to the Stash installation directory.
6. Tell Stash where to store your data
The Stash home directory is where your Stash data is stored.
Create your Stash home directory, and then tell Stash where you created it by setting a STASH_HOME environment variable, as follows.
For Windows 7:
- Go to Start, search for "sys env" and choose Edit the system environment variables.
- Click Environment Variables, and then New under 'System variables'.
- Enter "
STASH_HOME" as the Variable name, and the absolute path to your Stash home directory as the Variable value. Don't use a trailing backslash.
There are a few things to know about setting up the Stash home directory on Windows that will make life easier:
- You should not locate your Stash home directory inside the
— they should be entirely separate locations. If you do put the home directory in the<Stash installation directory>it will be overwritten, and lost, when Stash gets upgraded. And, by the way, you can't use the same Stash home directory for multiple instances of Stash.<Stash installation directory> - Keep the path length to the Stash home directory as short as possible. See Pull request merges can fail when Stash is hosted on Windows for an explanation.
- Don't use spaces in the path to the Stash home directory.
7. Start Stash!
The user that runs Stash should not have admin privileges (see this performance issue), but must have read, write and execute access to the Stash home directory and the <Stash installation directory>.
In a command prompt, change directory to the <Stash installation directory> and run the following command:
bin\start-stash.bat
In your browser, go to http://localhost:7990 and run through the Setup Wizard. In the Setup Wizard:
- Select Internal at the 'Database' step, if you are evaluating Stash. Stash will happily use its internal database, and you can easily migrate to external database later. See Connecting Stash to an external database.
- Set up JIRA integration now, or do this later if you wish. See Configuring JIRA integration in the Setup Wizard.
8. Set up your mail server
Configure your email server so users can receive a link from Stash that lets them generate their own passwords. See Setting up your mail server.
9. Add users and repositories
Now is the time to set up your users in Stash, and to tell Stash about any existing repositories you have. Please the following pages for the details:
Additional steps for production environments
For production environments we recommend that you configure the additional aspects below. These are not necessary when installing for evaluation purposes. Please see Using Stash in the enterprise for more information about best practice.
Install and run Stash as a dedicated user
- For production environments Stash should be run from a dedicated user account with restricted privileges. See Running Stash with a dedicated user.
Use an external database
- For production environments Stash should use an external database, rather than the embedded database. See Connecting Stash to an external database.
Secure the Stash home directory
- For production environments the Stash home directory (created in step 7 above) should be secured against unauthorised access. See Stash home directory.
Secure Stash with HTTPS
- For production environments access to Stash should be secured using HTTP over SSL, especially if your data is sensitive and Stash is exposed to the internet. See Securing Stash with Tomcat using SSL.
Run Stash as a Windows service
Connect to your existing user directory
Change the context path for Stash
- Where y ou are running Stash behind a proxy, or you have another Atlassian application, or any Java web application, available at the same hostname and context path as Stash, then you should set a unique context path for Stash. See Moving Stash to a different context path.
Stopping Stash (optional)
In a command prompt, change directory to the <Stash installation directory> and run:
bin\stop-stash.bat
Uninstalling Stash
To uninstall Stash, stop Stash as described above and then delete the <Stash installation directory> and Stash home directory.
