This manual is deprecated. Please visit https://groupoffice.readthedocs.io for the latest documentation.

Difference between revisions of "Installation"

From Group-Office Groupware and CRM Documentation
Jump to: navigation, search
(Complete mailserver solution)
(Redirected page to Installation manual)
 
(11 intermediate revisions by 2 users not shown)
Line 1: Line 1:
==Hardware recommendation and system requirements==
+
#REDIRECT [[Installation manual]]
We recommend an x86 dual core processor of a speed that is not too low or too high on the price/performance ratio.
+
The more RAM you put in the machine, the more users you can serve at the same time. You should start with at least 2GB but 4GB is recommended.
+
 
+
We recommend SAS disks in RAID 1 setup. This has the fastest performance and is redundant.
+
 
+
Read the [http://www.group-office.com/Pricing%20and%20Sign%20up/Server+version system requirements]
+
 
+
==Easy installation on a dedicated Debian or Ubuntu server==
+
 
+
This is the easiest way of installing Group-Office. With the debian packages everything is configured automatically and Group-Office updates will be installed automatically when you update your Debian or Ubuntu system.
+
 
+
Install Debian >= 5 or Ubuntu >=8.10
+
 
+
<b>Note:</b> All the commands here use "sudo". This is necessary on Ubuntu. If you are on Debian you can use the "su" command first and execute all the commands without "sudo".
+
 
+
Add the following line to /etc/apt/sources.list
+
 
+
<pre>
+
deb http://repos.groupoffice.eu/ threesix main
+
</pre>
+
 
+
You can do that easily by executing the following command in the terminal:
+
 
+
<pre>
+
echo -e "\n## Group-Office repository\ndeb http://repos.groupoffice.eu/ threesix main" | sudo tee -a /etc/apt/sources.list
+
</pre>
+
 
+
To authenticate the packages you need to import the public key by running the folowing commands:
+
In ubuntu don't do this as root because you will have trouble with the gpg keyring permissions. On debian you can do this as root and omit the sudo command before the apt-key add command.
+
 
+
<pre>
+
gpg --keyserver hkp://keyserver.ubuntu.com:11371 --recv-keys 01F1AE44
+
gpg --export --armor 01F1AE44 | sudo apt-key add -
+
</pre>
+
 
+
<b>Note:</b> The keyservers are often very slow. If the keyserver doesn't respond you may try this one instead: hkp://pgp.mit.edu
+
 
+
Open a terminal and become root. On Debian you must execute the command "su" and on Ubuntu you must execute the command "sudo -s" to become root.
+
 
+
<pre>
+
sudo apt-get update
+
sudo apt-get install groupoffice-com
+
</pre>
+
 
+
This will install groupoffice on http://yourhostname/groupoffice/. If you want to change the location read [[Moving Group-Office from it's default location]]
+
 
+
===Complete mailserver solution===
+
<b>Warning:</b> If you install groupoffice-mailserver it will reconfigure the entire mail system. Use on a Debian or Ubuntu installation without a mailserver configuration.
+
Install it with the following command:
+
 
+
<pre>
+
sudo apt-get install groupoffice-mailserver postfix postfix-mysql
+
</pre>
+
 
+
groupoffice-com is the software itself
+
 
+
groupoffice-mailserver will configure postfix, dovecot and spamassassin
+
 
+
===Video===
+
Watch this on video to see how it's done:
+
 
+
<videoflash>XTaeEYb5lLE|560|340</videoflash>
+
 
+
===Professional version===
+
To install the professional version you'll need a license from Intermesh. Ioncube needs to be installed too.
+
 
+
Then install Ioncube:
+
 
+
# Look up the download link at http://www.ioncube.com/loaders.php. Right click on the download link and select copy link location.
+
# Go to your server terminal and do (The examples here are for the Linux x86 architecture. your filenames might be different):
+
<pre>
+
sudo -s
+
cd /usr/local
+
wget <url from ioncube>/ioncube_loaders_xxx.tar.gz
+
tar zxf ioncube_loaders_xxx.tar.gz
+
rm ioncube_loaders_lin_xxx.tar.gz
+
</pre>
+
 
+
Now edit /etc/php5/apache2/php.ini and /etc/php5/cli/php.ini and add this line at the bottom:
+
<pre>
+
zend_extension=/usr/local/ioncube/ioncube_loader_lin_5.2.so
+
</pre>
+
 
+
or execute:
+
 
+
<pre>
+
echo -e "\nzend_extension=/usr/local/ioncube/ioncube_loader_lin_5.2.so" | sudo tee -a /etc/php5/apache2/php.ini
+
echo -e "\nzend_extension=/usr/local/ioncube/ioncube_loader_lin_5.2.so" | sudo tee -a /etc/php5/cli/php.ini
+
</pre>
+
 
+
php -v should show something like this now:
+
 
+
<pre>Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies
+
    with the ionCube PHP Loader v3.3.1, Copyright (c) 2002-2009, by ionCube Ltd., and</pre>
+
 
+
Now restart apache and your system is ready to run Group-Office professional. The existing installation can easily be upgraded. Use the instuctions from Intermesh when you purchase the professional version to install it.
+
 
+
<b>Note:</b> If you have a license for groupoffice.example.com for example. You must change the $config['serverclient_server_url'] in /etc/groupoffice/globalconfig.inc.php. Replace localhost with groupoffice.example.com becuase the license doesn't allow localhost to be used.
+
 
+
===Servermanager===
+
 
+
groupoffice-servermanager allows you to create multiple groupoffice installations on the machine. Any domain that points to the server IP address will work.
+
 
+
If you want this you need to execute the following command to install it:
+
 
+
<pre>
+
apt-get install groupoffice-servermanager
+
</pre>
+
 
+
For the servermanager to work you need to raise the groupoffice-com user's permissions. It must be able to create new databases. Execute this SQL when you installed the groupoffice-servermanager package:
+
 
+
<pre>REVOKE ALL PRIVILEGES ON * . * FROM 'groupoffice-com'@'localhost';
+
GRANT ALL PRIVILEGES ON * . * TO 'groupoffice-com'@'localhost' WITH GRANT OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;</pre>
+
 
+
After this you can add an installation with the name test.mydomain.com for example. If test.mydomain.com points to the server IP it should work. You can also test this by putting test.mydomain.com in your hosts file.
+
 
+
===Connecting an external mail client===
+
If Group-Office is configured with it's default mailserver configuration you can connect any IMAP client with these settings:
+
 
+
Host: your.hostname.com<br />
+
Encryption: SSL<br />
+
Protocol IMAP<br />
+
Port: 993<br />
+
Username: mailbox@hostname.com (Full e-mail address and not the Group-Office username)
+
Password: *****
+
 
+
==Manual installation==
+
 
+
 
+
===Preparing the server===
+
 
+
You need to make sure your system meets the system requirements. You can see it here:
+
 
+
http://www.group-office.com/Pricing+and+Sign+up/Server+version
+
 
+
You can test the system by running the test script:
+
 
+
http://group-office.svn.sourceforge.net/viewvc/*checkout*/group-office/trunk/www/install/gotest.php
+
 
+
This script should output all OK's for best performance.
+
 
+
You can follow this howto to setup an ideal Group-Office server:
+
 
+
http://www.howtoforge.com/groupware-server-with-group-office-postfix-dovecot-spamassassin-on-debian-lenny
+
 
+
When this is ready you need to have a connection to the server. Preferably you must have an <b>SSH connection</b> but an <b>FTP connection</b> will do too but it a little cumbersome. Apart from that you need a <b>MySQL</b> database with all privileges setup for the user.
+
 
+
So if you want Intermesh to install it then you must provide:
+
 
+
# A working domain where the test script runs OK
+
# An SSH or FTP connection to this domain
+
# The MySQL database connection parameters
+
 
+
=== Installing libwbxml ===
+
 
+
To Synchronize with Mobile phones you need a wbxml to xml and vice versa convertor. You need to install libwbxml.
+
 
+
Win32 executables are supplied with Group-Office.
+
 
+
For Max OS X you can find a package here: http://darwinports.com/ (Just search for wbxml)
+
 
+
On Debian / Ubuntu : just type: "apt-get install libwbxml2-utils" on the command line
+
 
+
You can find the source of the program here: http://libwbxml.aymerick.com/
+
 
+
'''An RPM for Redhat or CentOS:'''
+
 
+
http://atrpms.net/dist/el4/wbxml2/
+
 
+
'''Yum Alternative:'''
+
 
+
yum install libexpat.so.0 wbxml2
+
 
+
===Installing TNEF===
+
 
+
RPM for Redhat / CentOS
+
http://dag.wieers.com/rpm/packages/tnef/tnef-1.3.3-1.2.el4.rf.i386.rpm
+
 
+
Debian:
+
apt-get install tnef
+
 
+
===Installing IonCube===
+
Download from http://www.ioncube.com/loaders.php
+
 
+
'''Example:'''
+
 
+
    wget http://downloads2.ioncube.com/loader_downloads/ioncube_loaders_lin_x86.tar.gz
+
 
+
    tar -zxvf ioncube_loaders*
+
 
+
    mv ioncube /usr/local/ioncube
+
 
+
    Add "zend_extension = /usr/local/ioncube/ioncube_loader_lin_5.2.so" into your php.ini file before Zend references.
+
 
+
=== Installing Group-Office ===
+
 
+
When you've got all Ok's on the test script you can proceed with the Group-Office installation. Upload the Group-Office files and launch your browser. The installation process will appear and it will guide you through the installation.
+
 
+
 
+
==PDF fonts==
+
Group-Office can create PDF's. Like an invoice or calendar print. By default Group-Office users the default font Helvetica. This is fine in most cases so you don't need to do anything. This font is a standard PDF font and does need to be embedded in the PDF which results in a small PDF file (< 100kb).
+
However when you need special characters like Chinese or Russian characters you'll need to select another font. The "dejavusans" font is available by default and containts all unicode characters. The drawback is that this font is about 500kb large and your PDF will grow with that size too. You can optimize the font by only incuding the characters you need. You can find more information about that here:
+
 
+
http://www.tecnick.com/public/code/cp_dpage.php?aiocp_dp=tcpdf_fonts
+
 
+
To use a custom font put this in your config.php file:
+
 
+
<pre>
+
$config['tcpdf_font']='dejavusans';
+
</pre>
+
 
+
==Installing Group-Office on Plesk using Centos==
+
(Examples developed around a managed hosting account on mediatemple.com so there may be some differences that you will have to accommodate for)
+
 
+
In your administration panel you must turn on all of the developer tools and install YUM
+
Directions can be found at http://kb.mediatemple.net/questions/1564/Installing+the+yum+package+manager
+
 
+
For those that have not installed YUM but have developer tools installed you can run these commands
+
# Install Python Iniparse (a new dependency of Yum)
+
    rpm -Uvh http://mirror.centos.org/centos/5.2/os/i386/CentOS/python-iniparse-0.2.3-4.el5.noarch.rpm
+
# Install the Yum Metadata parser (another dependency of Yum)
+
    rpm -Uvh http://mirror.centos.org/centos/5.2/os/i386/CentOS/yum-metadata-parser-1.1.2-2.el5.i386.rpm
+
# Now install Yum
+
    rpm -Uvh http://mirror.centos.org/centos/5.2/os/i386/CentOS/yum-3.2.8-9.el5.centos.1.noarch.rpm
+
 
+
Next create a file call "vhost.conf" in your "/var/www/vhosts/<domain>/conf" folder path. Obviously change <domain> to your domain (ex. "/var/www/vhosts/group-office.com/conf")
+
 
+
    <Directory /var/www/vhosts/<domain>/httpdocs>   
+
    php_admin_value open_basedir none
+
    </Directory>
+
 
+
Once that file is in place run this command
+
    /usr/local/psa/admin/sbin/websrvmng -v -a
+
 
+
Once you have the above done you should be able to install the basic functions of Group-Office.
+
 
+
'''Install libwbxml'''
+
    rpm -Uvh http://dl.atrpms.net/all/wbxml2-0.9.2-5.el4.at.i386.rpm
+
 
+
'''Install TNEF'''
+
    rpm -Uvh http://dag.wieers.com/rpm/packages/tnef/tnef-1.3.3-1.2.el4.rf.i386.rpm
+
 
+
==Special config values==
+
 
+
#Log a user out after inactivity:<br />$config['sesssion_inactivity_timeout']=300;
+

Latest revision as of 15:19, 6 July 2012