Step 1: Install Ruby
Step 2: Install RubyGems
Step 3: Install Git
Step 4: Install the client tools
(ruby-full installs the gem binary automatically)
sudo apt-get install ruby-full git-core sudo gem install rhc
rhc setup
Step 1: Login to openshift.redhat.com
Step 2: Generate a Public/Private key pair
Step 3: Create your namespace (aka domain)
For ease of deployment use the pre-built dokuwiki-quickstart repository
https://github.com/openshift/dokuwiki-quickstart
Step 1: Create an empty application
Step 2: Download dokuwiki
Step 3: Push to OpenShift Online
rhc app create dokuwiki php-5.4 cd dokuwiki git remote add upstream -m master git://github.com/openshift/dokuwiki-quickstart.git git pull -s recursive -X theirs upstream master
Note: The git pull command above can be used later to pull updates to Dokuwiki
To customize Dokuwiki you must modify the git repository and the deploy scripts. This way your application customization will remain persistent accross each deployment.
Step 1: Install and configure custom Plugins
Step 2: Modify the Dokuwiki config files
Step 3: Update build and deploy hook scripts
Step 4: Commit locally
Step 5: Push to OpenShift
Step 6: Upload persistent data
cd ~/dokuwiki/.openshift mkdir plugins cd plugins wget https://github.com/kettari/authgoogle/archive/master.tar.gz tar xf master.tar.gz rm -f master.tar.gz mv authgoogle-master authgoogle
cd ~/dokuwiki/.openshift/conf cat ~/dokuwiki-2014-05-05a/conf/local.php > local.php cat ~/dokuwiki-2014-05-05a/conf/acl.auth.php > acl.auth.php cat ~/dokuwiki-2014-05-05a/conf/users.auth.php > users.auth.php cd ~/dokuwiki/.openshift cat ~/dokuwiki-2014-05-05a/.htaccess > .htaccess
cd ~/dokuwiki/.openshift/action_hooks vi deploy
Add the following lines to the bottom of the deploy script:
cp -rf ${OPENSHIFT_REPO_DIR}.openshift/conf/* ${dest_dir}/conf/ cp -rf ${OPENSHIFT_REPO_DIR}.openshift/plugins/* ${dest_dir}/lib/plugins/ cp -f ${OPENSHIFT_REPO_DIR}.openshift/.htaccess ${dest_dir}/
Commit and push your changes:
cd ~/dokuwiki git add . git commit git push
cd ~/dokuwiki-2014-05-05a/data/ tar czf ~/data-3-11-2015.tar.gz ./* cd rhc scp dokuwiki upload data-3-11-2015.tar.gz app-root/data/data/
Note: If rhc scp doesn't work, re-install the net-ssh gem specifying version 2.9.2
gem uninstall net-ssh gem install net-ssh -v 2.9.2
rhc ssh dokuwiki cd app-root/data/data tar xf data-3-11-2015.tar.gz rm -f data-3-11-2015.tar.gz exit
OpenShift supports custom domain names using its easy to use alias system
Step 1: Add a CNAME alias to your externally hosted DNS configuration
Step 2: Run rhc alias on your application instance
rhc alias add dokuwiki wiki.qclug.com
You can obtain Secure Shell access to your application (Gear) by running the following command:
rhc ssh dokuwiki
The persistent data storage location for your application can be accessed in your deploy scripts by using the following environment variable:
$OPENSHIFT_DATA_DIRs
If you want to start over, simply delete your application and your git repository:
rhc app-delete dokuwiki rm -rf dokuwiki