Wednesday, 20 August 2014

Install SeedDMS 4.0.0 on Ubuntu 14.04 (AWS hosted)

This took quite a wee while to figure out TBH but I got there in the end, with lots of thanks to Sergio and his post as well as other sources (linked to when I use them).

Logging in via MobaXterm from my windows box this is the process I followed:

sudo apt-get update

sudo apt-get upgrade

sudo shutdown -h now

Rebooted the machine, there’s usually a lot of guff about GRUB bootloader but that stuff is too scary so I just accepted the defaults…

Be aware that your machines IP address will change so you might need to edit your session in ModaXterm!

sudo apt-get install lamp-server^

Altered the root user password for MySQL to <your-password>.

sudo aptitude install php-pear

sudo aptitude install php-http-webdav-server

wget http://sourceforge.net/projects/seeddms/files/seeddms-4.0.0-pre5/SeedDMS_Lucene-1.1.1.tgz

wget http://sourceforge.net/projects/seeddms/files/seeddms-4.0.0-pre5/SeedDMS_Core-4.0.0pre5.tgz

wget http://sourceforge.net/projects/seeddms/files/seeddms-4.0.0-pre5/SeedDMS_Preview-1.0.0.tgz

sudo pear install SeedDMS_Core-4.0.0pre5.tgz

sudo pear install SeedDMS_Lucene-1.1.1.tgz

sudo pear install SeedDMS_Preview-1.0.0.tgz

wget http://download.pear.php.net/package/Log-1.12.7.tgz

sudo pear install Log-1.12.7.tgz

Then came the fun stuff:

cd /var/www/html/

sudo cp index.html index.html.old

sudo rm index.html

sudo wget http://sourceforge.net/projects/seeddms/files/seeddms-4.0.0-pre5/seeddms-4.0.0-pre5.tar.gz

sudo tar -xvzf seeddms-4.0.0-pre5.tar.gz

mysql -u root -p<your-password>

Within the MySQL shell entered this (after thinking of <mysql-password>):

create database seeddms;

grant all privileges on seeddms.* to seeddms@localhost identified by '<mysql-password>';

exit

Copy everything into our main directory and enable install:

sudo cp -a /var/www/html/seeddms-4.0.0-pre5/. /var/www/html/

cd conf/

touch ENABLE_INSTALL_TOOL

cd ..

sudo chown -R www-data /var/www/html/

sudo a2enmod rewrite

sudo apt-get install php5-gd

sudo service apache2 restart

Make the correct directories

sudo mkdir data

sudo mkdir data/staging

sudo mkdir data/lucene

Go home and install Zend (version 1 not 2):

cd ~

wget https://packages.zendframework.com/releases/ZendFramework-1.12.3/ZendFramework-1.12.3.tar.gz

tar -xvzf ZendFramework-1.12.3.tar.gz

Tell PHP where everything is:

sudo nano /etc/php5/apache2/php.ini Yeah… I know… but I like nano!

This bit is interesting as I needed to include the previously installed pear packages as well. I replaced the line:

;include_path = ".:/usr/share/php"

with (adapting the instructions from BGO):

include_path = ".:/usr/share/php:/home/ubuntu/ZendFramework-1.12.3/library"

Then:

sudo service apache2 restart

And hitting (in the browser):

<my-ip>/install/install.php

Once all that was done I simply cleaned up:

sudo rm /var/www/html/conf/ENABLE_INSTALL_TOOL

This all probably sounds dead simple but I got stuck any number of times and made lots of use of tail -f /var/log/apache2/error.log to check what I was doing wrong as things kept hanging while it was running. Hey ho. I’m not 100% sure that Zend is required TBH but better safe than sorry. This worked for me but do please bear in mind that YMMV.