Disclaimer: This page is intended for a linux-savvy (geeky) audience. ;)
This guide provides steps for installing Deki Wiki Hayes from source code on Ubuntu 7.10 (Gutsy). Keep in mind you can install Deki Wiki in minutes if you install using the VMware certified Deki Wiki.This is a great way to deploy, but it's also a great way to bang on Deki Wiki to see if it's a good fit for you.
Install the prerequisites, including mono, using apt-get. Just cut-n-paste to install:
NOTE: This is a complete list of prerequisites and their dependencies. Ubuntu 7.10 (actually all versions of Ubuntu) resolve dependencies for you and this list could be cut down by over 4/5... I have listed them all here for completeness.
apt-get install apache2 apache2-mpm-prefork apache2-utils apache2.2-common libaprutil1 libpq5 \ libapache2-mod-php5 php5-common libmysqlclient15off mysql-common php5-mysql php5-curl \ html2ps libhtml-parser-perl libhtml-tagset-perl libhtml-tree-perl \ libpaper-utils libpaper1 liburi-perl libwww-perl perlmagick libgd2-xpm libt1-5 php5-gd curl \ libdbd-mysql-perl libdbi-perl libnet-daemon-perl libplrpc-perl mysql-client-5.0 mysql-server \ mysql-server-5.0 apt-get install libmono-corlib1.0-cil libmono-corlib2.0-cil libmono-data-tds2.0-cil libmono-security2.0-cil libmono-sharpzip2.84-cil libmono-system-data2.0-cil libmono-system-web2.0-cil libmono-system2.0-cil libmono0 libmono2.0-cil mono-gac mono-runtime
NOTE: If you are using these instructions to install Deki Wiki 1.9.0 on an Ubuntu 8.04 system or if you have upgraded your Ubuntu 7.10 system to Ubuntu 8.04 then you will need to add the following library:
apt-get install libmono-i18n2.0-cil
Install ImageMagick:
apt-get install imagemagick
Install pear libraries:
apt-get install php-pear
pear install XML_RPC Cache_Lite
Download Hayes build from one of the following sources.
* RECOMMENDED: http://sourceforge.net/projects/dekiwiki (tarballs)
* http://wiki.opengarden.org/Source_Code (includes SVN enlistment info)
Extract the Source archive to a directory, refered to here as the [DEKI_SOURCE] directory:
tar xfvz Deki_Wiki_1.8.XX_Hayes_source.tar.gz
Copy web files to your apache "Document Root". I am running Deki Wiki out of /opt in its own Apache "Document Root". You may place it anywhere you like, just replace /opt/deki-hayes in these instructions with your "Document Root"
mkdir /opt/deki-hayes cp -r [DEKI_SOURCE]/web/* /opt/deki-hayes chown -R www-data:www-data /opt/deki-hayes
cp [DEKI_SOURCE]/config/deki-apache.conf /etc/apache2/sites-available/deki-hayes vi /etc/apache2/sites-available/deki-hayes
Change the following values according to your setup. The ServerName directive must be your FQDN (using deki.example.org in this documentation):
NOTE: The following instructions reflect a configuration when no other apache websites are configured or needed. It is beyond the scope of this documentation to configure DekiWiki with other sites.
ServerName deki.example.org DocumentRoot "/opt/deki-hayes"
Create a soft-link (symbolic link) from sites-available to sites-enabled in the /etc/apache2 directory:
NOTE: The "rm 000-default" command disables the default apache website (see above), which would prevent loading the wiki (Site settings error 500).
cd /etc/apache2/sites-enabled rm 000-default ln -s /etc/apache2/sites-available/deki-hayes /etc/apache2/sites-enabled/000-deki-hayes
Enable the mod_rewrite module
a2enmod rewrite
Enable mod_proxy_http module
a2enmod proxy_http
The deki-api is a .NET application which runs under the mono runtime. deki-api runs as a standalone mono application which uses MindTouch Dream's built-in webserver. mod_proxy proxy is used to proxy requests from apache to deki-api.
Edit the mod_proxy config file (/etc/apache2/mods-available/proxy.conf) and make sure you have the following:
<Proxy *>
AddDefaultCharset off
Order deny,allow
Deny from all
Allow from all
</Proxy> Edit your deki apache config file /etc/apache2/sites-available/deki-hayes and make sure the following lines are uncommented
# mod_proxy rules ProxyPass /@api http://localhost:8081 retry=1 ProxyPassReverse /@api http://localhost:8081 SetEnv force-proxy-request-1.0 1 SetEnv proxy-nokeepalive 1
Restart apache to enable the module and apply the new settings
/etc/init.d/apache2 restart
Create the deki-api logfile
touch /var/log/deki-api.log chown www-data:www-data /var/log/deki-api.log
Create the mono .wapi directory (this annoys me as I want to put it in /opt/deki-hayes but can't figure out how):
mkdir /var/www/.wapi chown www-data:www-data /var/www/.wapi
Edit the [DEKI_SOURCE]/config/dekihost init script. This script can be used to test the status of deki-api or start/stop the mindtouch.host.sh (deki-api) process. Change the following values to match your configuration:
# path to your wiki DEKI_PATH=/opt/deki-hayes # this should match your Apache ServerName directive DEKI_SERVERNAME=deki.example.com
Copy the init script
cp config/dekihost /etc/init.d/
Create a symlink to the dekihost init script in the appropriate runlevel
ln -s /etc/init.d/dekihost /etc/rc2.d/S92dekihost
Launch a browser and go to the installer:
http://deki-hayes/config/index.php
Fill in the required information and click "Install Deki Wiki"
Complete the installation by running the additional commands as instructed by the installer.
If deki-api failed to load try the following:
* make sure the mono process is running
ps ax|grep mindtouch.host
You should see a process like:
www-data 3401 0.5 15.9 67292 40892 pts/0 Sl 19:25 0:03 mono \ /var/www/deki-hayes/bin/mindtouch.host.exe apikey 92669 script \ /etc/dekiwiki/mindtouch.deki.startup.xml \ server-name http://deki-hayes path-prefix @api http-port 8081 ip localhost notty
If you don't see the process above, check the dekiapi error logs (/var/www/deki-hayes/bin/logs/trace.log) for more details
You can restart the deki-api process by:
/etc/init.d/dekihost restart
Thanks!
http://cogley.wik.is/Knowledgebase/Deki_Wiki/Installing_Deki_Wiki_on_VPS_from_Linode_Running_Ubuntu_7.10
apt-get install ghostscript