All Versions
Fisheye 4.2 DocumentationFisheye 4.1 Documentation
Fisheye 4.0 Documentation
More...
This guide describes the advanced FishEye installation options.
Evaluating FishEye for the first time? See the FishEye 101 page.
/FISHEYE_HOME/
below.java
is in the PATH
, or that the JAVA_HOME
environment variable is set./FISHEYE_HOME/
and run bin/start.sh
if you are on Linux/MacOS, or bin\start.bat
on Windows.hostname
is the name of the machine where you extracted FishEye).Read-only access for FishEye
We recommend that you run FishEye as a user that has only read access to your repository.
If you're running Fisheye on Windows you might want to install it as a service so that Fisheye start-up automatically during start-up
Number of files
If you have a large number of repositories, we recommend you increase the default number of files that FishEye is allowed to open. See this knowledge base article for more info: Indexer Paused with "Too many open files" Error.
See the guidelines on Running FishEye for the First Time.
By default, FishEye will run self-contained within the /FISHEYE_HOME/
directory. The FishEye directory layout looks like this:
| Configuration file. |
| Directory under which FishEye stores its data. |
| Persistent information. |
| Caches and indexes. |
| Log files. |
| Temporary files. |
| Caches and indexes. (in addition to |
| Scripts for controling FishEye. |
| FishEye's dependent libraries. |
| Remainder omitted for brevity. |
However, this self-contained layout results in tedious copying of files each time you upgrade FishEye. Also, if you want to run multiple instances of FishEye, you need multiple /FISHEYE_HOME/
installations. These two issues can be avoided by setting a FISHEYE_INST ('FishEye Instance') location.
FISHEYE_INST is a location where your repository data is stored, separate from the installation location of the FishEye application. This may be necessary for practical or administrative reasons.
Use of a separate FISHEYE_INST location is recommended for production installations of FishEye.
You must copy your config.xml to the new FISHEYE_INST
Once you have declared your FISHEYE_INST, you will need to copy your FISHEYE_HOME/config.xml file to your FISHEYE_INST/ directory.
When the FISHEYE_INST
environment variable is set, FishEye's directory layout becomes:
|
|
| All permanent and most temporary data is found under |
| Caches and indexes are found under |
| Site-specific Java libraries (.jars) that FishEye should load on startup. (Do not copy the dependent |
| Site-specific syntax highlighting definitions. |
| Used for setting system properties within the FishEye JVM, which may sometimes be useful for support purposes.(Note: the other way to set properties is via FISHEYE_OPTS, e.g.: |
| FishEye's dependent libraries. |
| FishEye bundled highlighting definitions. |
|
|
| Remaining files are found under |
The rest of this Installation Guide refers to $FISHEYE_INST/
, but if you have not set FISHEYE_INST
then it defaults to /FISHEYE_HOME/
(the directory where you extracted FishEye).
18 Comments
CesarCnf
Jul 19, 2010If you follow the dragons quest, at the Stage 5 - step 2 and compares with this "Installing FishEye" document, i supose that, like the all other application suite, the most suitable indication by the install folder (
/opt/fecru-x.x.x
) and home folder (/usr/local/fisheye) its from the first, and will be a better policy mantain the same layout than the other services/tools both for enviroment vars and the directories. Bye :DDoug Ross
Dec 10, 2010The placeholder (variable) names used in the documentation are confusing. FISHEYE_INST makes me think of where the install files live. But really it means "instance." This has confused my team more than once.
One way to clarify might be to use slightly more complete, descriptive variable names:
FISHEYE_INSTALL=/apps/fecru/
FISHEYE_INSTANCE=/apps/fecru/data/instance1/
or
FISHEYE_INSTALL=/apps/fecru/
FISHEYE_DATA=/apps/fectru/data/
or
FISHEYE_HOME=/apps/fecru/
FISHEYE_DATA=/apps/fecru/data
Anonymous
Mar 08, 2011agreed
Anonymous
May 25, 2011agreed.
Also this line is not clear
"When the
FISHEYE_INST
environment variable is set, FishEye's directory layout becomes:"HOW does it become like this?
The whole setup for FishEye on Linux is a bit like trial-and-error.
I could also not find instructions regarding which permissions the fisheye user account is required to have in the system.. (or am I supposed to have it run as root??)
The Confluence guys did a nice job on this topic here: http://confluence.atlassian.com/display/JIRA043/Installing+JIRA+Standalone+on+Unix+or+Linux#InstallingJIRAStandaloneonUnixorLinux-3.StartJIRA
Anonymous
May 30, 2012Reading through the install documentation, I have to agree with you completely on this one. The current design doesnt have any Atlassian 'zing' to it. With so many products, why has Atlassian let this one become the exception to the rule?
Anonymous
Mar 03, 2011How do i verify integrity of the downloaded zip? Thanks.
Anonymous
May 13, 2011you can check the contents of the file with the command "unzip -l"
Anonymous
May 18, 2011For JIRA and confluence I can set the data directory in a config file (a .properties file). Is there a way to do this for fisheye? I'd rather not maintain separate environment variables, but prefer a standard file based approach between systems.
Anonymous
Aug 16, 2011I'll answer a few questions here just form experience:
Run fisheye under a dedicated, non-priveledged user will rwx access on the fisheye install and data directories
Anonymous
Oct 05, 2011Hi there,
Thanks for the tip.
I found on Mac OS X that despite the fact that I have FISHEYE_INST variable set correctly in ~/.profile
(echo $FISHEYE_INST - displays my handcrafted path correctly)
That the SYSINFO tab in Crucible still stated that my INST location was the same as the HOME location.
In bin/fisheyectl.sh is the following line;
if [ -z "$FISHEYE_INST" ] ; then
FISHEYE_INST=$FISHEYE_HOME
fi
I assume, that for some reason that this test for the INST variable does not work on Mac OS X.
I changed it to;
if [ -z "$FISHEYE_INST" ] ; then
FISHEYE_INST=/my/correct/location/
fi
And Crucible has started correctly - with my existing repo and commits / reviews.
Thanks - Gavin.
Anonymous
Nov 19, 2011I am installing almost all of the atlassian products this evening. The instructions for Fisheye and Crucible are the least obvious. It seems I have to redo my installation because the instructions for production are given at the end.
Anonymous
Dec 25, 2011Agree with others.
This document is not written with production systems in mind. Why document things at the end. Most users installing Fisheye are doing it for production and its a waste of time to go through this multiple times.
Not to mention Syncing all this up with Crowd.
Anonymous
Feb 16, 2012These instructions are very unclear and need a technical writer to redo them completely. I am jumping all over the place trying to find what I need, and it's trial and error. For instance, it doesn't appear I can start with a MySQL database from the beginning – I have to migrate to it. And finding the doc link to external DB setup was not easy – I had to get it through the system requirements page. And are you supposed to copy the config.xml before or after you've configured your FISHEY_INST env variable. These instructions should be far more step by step. Too many assumptions are made. Now for JIRA integration, oh joy.
Anonymous
Feb 17, 2012I agree with many of the statements made here. The fisheye install instructions are very poorly written. In trying to understand on how to install for a production environment, you end up all over the place and by the time you have performed part of the installation, your so lost your not sure what you have or have not installed and what you still need to do/configure. If the document is going to be 50 links atleast make it like code w/ if then sections. For ex, method of service: If running as windows service or running as windows application, etc.....
David Chung
Mar 26, 2012One thing to note is that /FISHEYE_HOME/var/ can grow very large. I was used to confluence and JIRA separating its /var and binaries and neglected that /FISHEYE_HOME/ combined the two. Came in over a weekend of indexing my repositories to find that my root file system was out of space...
Anonymous
Jul 19, 2012I'm really sorry that I have to say this, but the quality of this documentation is rather insulting for someone who paid money for a product.
The recommended configuration (separate paths for HOME and INST) is not explained at all, just a few brief statements were given (the directory structure "becomes" different - great! How about telling me what I need to do to make it "become" like that? Any why do I need to duplicate my config.xml by copying it? Is this an error in the documentation or is it really intentional and necessary to compensate poor application design?).
This document does not even bother to mention that a external database is recommended for production use. Why should it? There's the most amazing "Dragons - Stage 5" Document available that will tell me. Of course the intuitive name makes it most easy to find that document. But fortunately it's not linked from this page, so a new customer will certainly use the search function to check if he should use an external database. On a short side note: The adventure-like style of writing is really a pleasure after you have already wasted your time on following the instructions here or on some other random pages linked here or elsewhere.
One of them would be the "Detailed Installation Guide"-section of this document which just asks me to read "Running FishEye for the First Time" which is actually a link to "Configuring Fisheye" (semantics?). In the end I got another useless piece of documentation (except for the mentioning of port 1059 to be used there's basically no new information) which is so not-detailed that it even skips mentioning the (recommended?) use of FISHEYE_INST. Of course there's also no remark about HSQL being unreliable and that an external database should be used for production installations. I guess new customers just happen to know this fact from their daily newspaper.
So, after reading all the documents (another hour wasted for nothing) the conclusion is that rather than following this useless documentation here (or in the equally useless "Configuring Fisheye" document), one should just read Step 3 in the "Dragons - Stage5" document (well hidden by a "Click to expand"-Line) because there a simple best-practice-like approach is documented. Thank you so much.
By now the only thing which is unclear is the need to define a (system wide) environment variable for the FishEye paths. Why can't it simply be set in the start.sh script? Would that be too easy? Too self-contained? Or is there actually a reason for it? Maybe I should search for "castle" or maybe "elves" to find the corresponding documentation? After all "dragon" brought up the right answer to my earlier question. Is this funny? No.
I can absolutely understand that writing technical documents might not be the most fulfilling, entertaining and joyful thing to do. But is that a reason to do it this poorly? Whoever wrote this document was being paid for it, right? Actually paid by people who now pay money for your product. So please have the decency to do a proper job, especially as your laziness is straining other people. This is not open source, this is not a community product, I don't have a way to fix the documentation myself (rather than wasting time on writing this comment!). Thank you.
Maybe you can understand that doing an administrators job is as well something which is not entertaining and which might also not be a joyful thing to do (mostly because of bugs and poor documentation). It's hard work, usually not paid well, and hardly fun, but it needs to be done diligently and efficiently. Please don't make it more difficult than it already is. Thank you.
So... how hard can it be to provide a guide which explains all necessary steps to perform a production installation according to best practices? You almost managed to do so in the "Guide to Installing an Atlassian Integrated Suite" (which contains the silly "dragon tale").
Having your technical writers do a proper job on this product would help so many people save time, money and frustration.
Maybe the product manager who made the decision to keep the documentation of this product at the current level can reconsider investing the few hours of effort to rework the documentation. Judging from the comments on this page I might not be the only person who would really appreciate this.
Thank you very much for reading all of this.
paulwatson
Jul 24, 2012Thank you very much for writing all of that! And thanks for caring enough to spend the time on such a detailed summary of the problems with these pages.
Please be assured that we have been aware of this for a while ( FE-4121 - Getting issue details... STATUS ) and have been working to improve the whole set of install and config docs for the FishEye 2.8 release, due in a few weeks. The core page will follow the same approach as Installing Stash on Windows, the intention being to include all necessary steps and to minimise the number of links out to other pages. I'd appreciate your comments on that approach...
regards, Paul
Anonymous
Aug 03, 2012Dear Paul Watson,
thank you for your response.
What I miss most is:
IMO It would also be nice if you could provide a separate guide for an evaluation installation. The scope is completely different when evaluating: There's no need for security, maintainability, backup, etc. - while all those things are really important for a production setup. So distinguishing here might make your new / potential customers happy as they got a way to do a "one click setup" easily without technical skill (is there a vmware image actually?), and after they have decided to use/buy the product, their admin will be happy to have a clear best practice guide he can follow.
Also I think it's a really bad ida to cover Linux and Mac installations in the same way. I've seen very few people on Mac careing about (and understanding) security while most servers in hostile environments run Linux. On a side note: Finding a .DS_Store in an offical "released for linux" file (forgot which product that was..) is not really leaving a good impression. Regarding Stash: If Mac OS X is supported for evaluation use only - why make the MAC paths the default in your documentation?
As it might be relevant for you to know the requirements for my primary use cases for Atlassian products - they are:
I hope this feedback will help you to improve the documentation quality.
Kind Regards