diff options
author | rautenberg <rautenberg@in-silico.ch> | 2012-03-13 12:13:23 +0100 |
---|---|---|
committer | rautenberg <rautenberg@in-silico.ch> | 2012-03-13 12:13:23 +0100 |
commit | 65b517dd4494d730bf5602bd070a59d0044efe5b (patch) | |
tree | 7443c67b2813a9f04483ba8c59f0fd8c2a798923 /README | |
parent | fe3e3f88762df7cc57df76fe4d2a10602a3daa73 (diff) | |
parent | 803ae809cc5092e082ee527dac6eb25c1a63dcf3 (diff) |
Merge branch 'release/v3.1.0'v3.1.0
Diffstat (limited to 'README')
-rw-r--r-- | README | 86 |
1 files changed, 6 insertions, 80 deletions
@@ -13,92 +13,18 @@ Here are some of my goals when writing the installer: - Encapsulated (everything is installed in a sub-directory in $HOME) - Logged (all non-elemtary actions are logged) -Even if we officially support only *one* distro (currently Debian 6.0.1), I tested the installer successfully on various Ubuntus. In the README at the top are the requirements of the installer. By default, everything is installed to $HOME/opentox-ruby (=OT_PREFIX). The configs go to OT_PREFIX/.sh_<Package>_ot.sh for each package. + +Configure your system in config.sh. NOTE for variable NGINX_PORT: leave this empty or set to ":80" to use port 80. If you do this, use the ot-scripts in "ot-tools-root.sh". Otherwise, if NGINX_PORT >1024, use ot-scripts in "ot-tools-user.sh". + +Even if we officially support only *one* distro (currently Debian 6.0.1), I tested the installer successfully on various Ubuntus. In this README at the top are the requirements of the installer. By default, everything is installed to $HOME/opentox-ruby (=OT_PREFIX). The configs go to OT_PREFIX/.sh_<Package>_ot.sh for each package. After running the installer, configure the system by editing the startup file of your favorite shell (in my case, BASH with the file ~ /. bashrc) to include ~/.opentox-ui.sh (in my case with 'source ...'). This file is the only one that the installer creates outside OT_PREFIX. Thus, the system is fully configured: If you now open a new shell, all environment variables will be adjusted. To start the system I run the following (but that is not part of the installer): -sudo nohup $HOME/opentox-ruby/redis-2.2.2/src/redis-server $HOME/opentox-ruby/redis-2.2.2/redis.conf & -sudo nohup $HOME/opentox-ruby/nginx/sbin/nginx -c $HOME/opentox-ruby/nginx/conf/nginx.conf & +nohup $HOME/opentox-ruby/redis-2.2.2/src/redis-server $HOME/opentox-ruby/redis-2.2.2/redis.conf & +nohup $HOME/opentox-ruby/nginx/sbin/nginx -c $HOME/opentox-ruby/nginx/conf/nginx.conf & To uninstall the system simply delete the link from the startup file: Done. To save disc space delete directory OT_PREFIX. Anyone can run multiple Opentox versions on the same machine: Just install again, but to a different OT_PREFIX. The switch works manually: Include the sh_<Package>_ot.sh files from the desired OT_PREFIX in $HOME/opentox-ui.sh (only one installation may be activated at any time). -Some useful scripts to put in your ~/.bashrc in case you are using bash (assuming OT_PREFIX is '~/opentox-ruby'): - -# Load server config -otconfig() { - source $HOME/.opentox-ui.sh -} - -# Update the development version -otupdate() { - START_DIR=`pwd` - otconfig - cd $HOME/opentox-ruby/www/opentox - for d in `find -not -name "." -type d -maxdepth 1 2>/dev/null`; do echo $d ; cd $d ; git pull ; echo ; cd - ; done - cd $HOME/opentox-ruby/www/opentox/algorithm/libfminer - mv libbbrc/Makefile libbbrc/Makefile~ - mv liblast/Makefile liblast/Makefile~ - if ! git pull; then - echo "Error! Pull for Fminer failed." - return 1 - fi - mv libbbrc/Makefile~ libbbrc/Makefile - mv liblast/Makefile~ liblast/Makefile - make -C libbbrc/ clean - make -C libbbrc/ ruby - make -C liblast/ clean - make -C liblast/ ruby - cd - - cd $HOME/opentox-ruby/www/opentox/algorithm/last-utils - if ! git pull; then - echo "Error! Pull for Last-Utils failed." - return 1 - fi - cd - - cd opentox-ruby - LINK_DIR=`gem which opentox-ruby | sed 's/\/opentox-ruby.rb//'` - if [ -h $LINK_DIR ]; then - rm -f $LINK_DIR - fi - rake install - if ! [ -h $LINK_DIR ]; then - echo "Warning! Your lib $LINK_DIR is no symlink. Linking back for you..." - rm -rf "$LINK_DIR~" - mv "$LINK_DIR" "$LINK_DIR~" - ln -sf $HOME/opentox-ruby/www/opentox/opentox-ruby/lib `echo ${LINK_DIR::${#LINK_DIR}-4}` - fi - echo "Please execute 'otstart' to restart." - cd "$START_DIR" -} - -# Start the server -otstart() { - otkill - sudo bash -c "source $HOME/.opentox-ui.sh; nohup redis-server $HOME/opentox-ruby/redis-2.2.2/redis.conf >/dev/null 2>&1 &" - sudo bash -c "source $HOME/.opentox-ui.sh; nohup nginx -c $HOME/opentox-ruby/nginx/conf/nginx.conf >/dev/null 2>&1 &" - sleep 2 - if ! pgrep nginx>/dev/null 2>&1; then echo "Failed to start nginx."; fi - if ! pgrep redis-server>/dev/null 2>&1; then echo "Failed to start redis."; fi -} - -# Display log -alias otless='less $HOME/.opentox/log/production.log' - -# Tail log -alias ottail='tail -f $HOME/.opentox/log/production.log' - -# Reload the server -otreload() { - sudo bash -c "source $HOME/.opentox-ui.sh; nginx -s reload" -} -# Kill the server -otkill() { - sudo killall nginx >/dev/null 2>&1 - sudo bash -c "source $HOME/.opentox-ui.sh; redis-cli shutdown >/dev/null 2>&1" - while ps ax | grep PassengerWatchdog | grep -v grep >/dev/null 2>&1; do sleep 1; done - while ps ax | grep Rack | grep -v grep >/dev/null 2>&1; do sleep 1; done - for p in `pgrep R 2>/dev/null`; do sudo kill -9 $p; done -} |