DokuWiki

It's better when it's simple

User Tools

Site Tools


install:dokuwiki_on_a_stick

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revisionBoth sides next revision
install:dokuwiki_on_a_stick [2017-03-22 03:26] – added requirements section 45.72.147.100install:dokuwiki_on_a_stick [2017-03-24 13:39] – [Tips] 213.219.188.215
Line 31: Line 31:
  
   * [[http://www.splitbrain.org/blog/2011-01/16-dokuwiki_on_a_stick_in_dropbox|DokuWiki on a Stick in DropBox]]   * [[http://www.splitbrain.org/blog/2011-01/16-dokuwiki_on_a_stick_in_dropbox|DokuWiki on a Stick in DropBox]]
 +
 +==== Creating a Dokuwiki USB stick for Ubuntu and Windows execution ====
 +
 +If you also want the usb stick to run under 64bit Ubuntu then you will need to create an extra partition on your usb stick. Its probably best to do this prior to installing the windows solution but if you already did this then you can copy the files to a temporary location, re-format your usb stick and then copy them back. You may also use something like GParted which allows you to resize your existing partition.
 +
 +These are the partitions
 +  * A FAT32 partition to hold the wiki. Name this "WIKI". Keep it uppercase for Windows to work,
 +  * An ext3 partition of  around 240mb. Name this "linuxWiki". The files consume around 65Mb and so 240Mb gives plenty of spare
 +  * Install the windows Dokuwiki on the fat32 partition named WIKI. Follow the instructions above to achieve this.
 +
 +==== Linux Execution. To be installed on the linuxWiki partition ====
 +
 +=== HTTP Interpretor ===
 +To execute the wiki you need a small server that can interpret http format. The chosen server needs to execute from the stick. One that works out of the box is Mongoose https://code.google.com/archive/p/mongoose/
 +The download page is https://code.google.com/archive/p/mongoose/downloads 
 +The binary file **mongoose-lua-sqlite-ssl-static-x86_64-5.1** is required. It will process the http requests on localhost:8080 which will default to file doku.php
 +The suffix php will then require a PHP interpretor.
 +
 +==== PHP Interpretor ===
 +The version I downloaded was 5.5.38. http://php.net/downloads.php
 +The newer version (7.1.3) also works fine but seemed slower.
 +
 +unzip the download to obtain dir php-5.5.38
 +
 +To build into a directory php
 +<code>
 +  cd php-5.5.38/
 +  ./configure  --prefix=$HOME/php
 +  make
 +  make install
 +</code>
 +
 +Once built we only need the one executable file located at **$HOME/php/bin/php-cgi**
 +
 +==== Layout of files in partition linuxWiki ====
 +
 +<code>
 +/media/mike/linuxWiki$ tree
 +.
 +├── linuxStart.sh
 +├── server
 +│   ├── dokuwiki -> ../../WIKI/dokuwiki
 +│   ├── mongoose.conf
 +│   ├── mongoose-lua-sqlite-ssl-static-x86_64-5.1
 +│   └── php-cgi
 +└── startWiki.desktop
 +</code>
 +
 +=== File startWiki.desktop ===
 +This is a .desktop file that allows execution of the shell script file linuxStart.sh from the Nautilus file browser. 
 +
 +The content of the file is
 +<code>
 +[Desktop Entry]
 +Type=Application
 +Terminal=true
 +Name=Start Dokuwiki
 +Icon=utilities-terminal
 +Exec=bash -c 'cd "$(dirname %k)";./linuxStart.sh;$SHELL'
 +Categories=Application;
 +</code>
 +Once created set its permissions to allow execute
 +   chmod +x startWiki.desktop
 +
 +=== File linuxStart.sh ===
 +
 +This also needs its execution bit set and can be started from command line of a terminal if you prefer not to use Nautilus. Its content is
 +
 +<code>
 +#!/bin/bash
 +
 +cd server
 +echo "Open a browser to address 127.0.0.1:8080"
 +echo "Leave this terminal window running until you no longer need the http server to access the wiki"
 +echo "close the terminal when finished so that you can unmount the usb stick"
 +./mongoose-lua-sqlite-ssl-static-x86_64-5.1 
 +</code>
 +
 +This will start the mongoose http server. This server needs a configuration file. 
 +
 +=== File server/mongoose.conf ===
 +
 +This configuration file directs mongoose to use the php-cgi program to interpret http links to files of type *.php. It also sets the document_root to directory dokuWiki which we see in the moment is a symbolic link to the dokuWiki directory on the fat32 partition and the defult run file becomes index.php which calls doku.php to start the wiki engine.
 +
 +<code>
 +cgi_interpreter ./php-cgi
 +enable_directory_listing no
 +document_root dokuwiki
 +</code>
 +
 +The other command setting directory listings off is a security measure to stop the display of a directory list for any paths which don't contain an index.php or index.html file. See https://www.dokuwiki.org/install:mongoose
 +
 +=== Dir server/dokuWiki ===
 +This links back to the fat32 partition where the dokuwiki installation resides. Create it via command
 +  ln -s  ../../WIKI/dokuwiki  dokuwiki
 +  
 +=== The http and php server files ===
 +These were created in the first two steps. Copy both mentioned files to the server directory and set the execution bit on both files.
 +
 +==== Current Issues ====
 +If you use 'localhost:8080' as the location of your wiki then you will find that the Dokuwiki Media Manager page has problems which makes it impossible to load any media files. If you instead direct your browser to '127.0.0.1:8080' or 'yourMachinesHostName:8080' then this problem is avoided. 
 +
  
 ===== Old Releases ===== ===== Old Releases =====
install/dokuwiki_on_a_stick.txt · Last modified: 2023-07-29 15:53 by michaelsy

Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki