Metacat Install - Mac OS X
KNB Home Data People Informatics Biocomplexity Education Software

Installing Metacat on Mac OSX (10.4.10)

Author: Matthew Perry
Date: 11/9/2006
Updated: 11/04/07 Derik Barseghian

This is a terse cheatsheet for installing metacat with postgres on os X. Please see the general instructions for the full details.

Pre-Requirements

Install ant, postgres, tomcat using macports

Alternatively, download and install ant, postgres and tomcat from source or using fink.

install macports.

launch a terminal

sudo port -d sync
sudo port search ant
sudo port install ant
sudo port search postgres
sudo port install postgresql82
sudo port search tomcat
sudo port install tomcat5

Metacat Install

Setup Postgres Database

cd /opt/local/lib/postgresql82/
sudo mkdir data
chown -R yourusername.yourusername data
cd data
../bin/initdb -D data
../bin/pg_ctl -D data -l logfile start
../bin/createdb metacat
../bin/psql -d metacat
metacat=> create user metacat with unencrypted password 'metacat';
metacat=> \q

test password:

	../bin/psql -U metacat -W -h localhost metacat
	Password for user metacat:
	metacat=> \q

cd /opt/local/share/java/tomcat5
sudo mkdir -p data/metacat/data
sudo mkdir -p data/metacat/inlinedata
chown -R yourusername.yourusername data


bin/initdb -D data
bin/pg_ctl -D data -l logfile start
bin/createdb metacat
bin/psql -d metacat
metacat=> create user metacat with unencrypted password 'yourpassword';
metacat=> \q

Add to data/pg_hba.conf:

	host metacat metacat 127.0.0.1 255.255.255.255 password

bin/pg_ctl -D data -l logfile restart
psql -U metacat -W -h localhost metacat

Checkout Metacat

mkdir ~/cvs_src/
cd ~/cvs_src
export CVS_RSH="/usr/bin/ssh"
cvs -d:ext:your_cvs_name@cvs.ecoinformatics.org:/cvs co metacat
cvs -d:ext:your_cvs_name@cvs.ecoinformatics.org:/cvs co utilities

Edit build.properties as needed

tomcat=/opt/local/share/java/tomcat5
deploy.dir=/opt/local/share/java/tomcat5/webapps/
config.hostname=localhost
config.port=8080
config.port.https=8443

datafilepath=/opt/local/share/java/tomcat5/data/metacat/data
inlinedatafilepath=/opt/local/share/java/tomcat5/data/metacat/inlinedata

if your mac username is different from your cvs name, hardcode hack:

	cvsroot=:ext:yourcvsname@cvs.ecoinformatics.org:/cvs

log.dir=/opt/local/share/java/tomcat5/logs
metacat.dir=/Users/yourname/nceas/metacat

Install Metacat

cd metacat
sudo ant install

Enter your cvs password a few times...

psql82 -U metacat -W -h localhost -f build/src/xmltables-postgres.sql metacat
ant register-schemas

Restart tomcat

sudo /opt/local/share/java/tomcat5/bin/shutdown.sh
sudo /opt/local/share/java/tomcat5/bin/startup.sh

Point your browser to http://localhost:8080/knb/ and you should be in business.

After restarting, you'll need to fire off the following commands in order to start up postgres/tomcat again:

Startup

/Users/nceas/Apps/postgres/bin/pg_ctl -D /Users/nceas/Apps/postgres/data/ -l /Users/nceas/Apps/postgres/logfile -m fast start
/Users/nceas/Apps/apache-tomcat-5.5.20/bin/startup.sh

Shutdown

/Users/nceas/Apps/apache-tomcat-5.5.20/bin/shutdown.sh
/Users/nceas/Apps/postgres/bin/pg_ctl -D /Users/nceas/Apps/postgres/data/ -l /Users/nceas/Apps/postgres/logfile -m fast stop

You can create two shell scripts with the preceeding commands; start_metacat.sh and stop_metacat.sh