This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
wiki:qclug_presentations:cloud_hosting_aws_heroku_openshift [2015/03/11 04:38] Root |
wiki:qclug_presentations:cloud_hosting_aws_heroku_openshift [2015/03/15 01:35] (current) Root |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Presentation ====== | ||
+ | |||
+ | {{wiki/qclug_presentations/cloud_hosting_aws_heroku_openshift.pdf}} | ||
+ | {{wiki/qclug_presentations/cloud_hosting_aws_heroku_openshift.odp}} | ||
+ | |||
====== OpenShift Demonstration Steps ====== | ====== OpenShift Demonstration Steps ====== | ||
Line 49: | Line 54: | ||
This way your application customization will remain persistent accross each deployment. | This way your application customization will remain persistent accross each deployment. | ||
- | Step 1: Install and configure Google Authentication\\ | + | Step 1: Install and configure custom Plugins\\ |
Step 2: Modify the Dokuwiki config files\\ | Step 2: Modify the Dokuwiki config files\\ | ||
- | Step 3: Update the deploy hook script\\ | + | Step 3: Update build and deploy hook scripts\\ |
+ | Step 4: Commit locally\\ | ||
+ | Step 5: Push to OpenShift\\ | ||
+ | Step 6: Upload persistent data\\ | ||
+ | ==== Plugins ==== | ||
<code> | <code> | ||
cd ~/dokuwiki/.openshift | cd ~/dokuwiki/.openshift | ||
Line 59: | Line 68: | ||
wget https://github.com/kettari/authgoogle/archive/master.tar.gz | wget https://github.com/kettari/authgoogle/archive/master.tar.gz | ||
tar xf master.tar.gz | tar xf master.tar.gz | ||
- | rm master.tar.gz | + | rm -f master.tar.gz |
mv authgoogle-master authgoogle | mv authgoogle-master authgoogle | ||
+ | </code> | ||
+ | ==== Config Files ==== | ||
+ | <code> | ||
cd ~/dokuwiki/.openshift/conf | cd ~/dokuwiki/.openshift/conf | ||
- | vi local.php | + | 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 | ||
</code> | </code> | ||
+ | ==== Hook scripts ==== | ||
+ | <code> | ||
+ | cd ~/dokuwiki/.openshift/action_hooks | ||
+ | vi deploy | ||
+ | </code> | ||
+ | Add the following lines to the bottom of the deploy script: | ||
+ | <code> | ||
+ | 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}/ | ||
+ | </code> | ||
+ | Commit and push your changes: | ||
+ | <code> | ||
+ | cd ~/dokuwiki | ||
+ | git add . | ||
+ | git commit | ||
+ | git push | ||
+ | </code> | ||
+ | ==== Upload Persistent Data ==== | ||
+ | <code> | ||
+ | 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/ | ||
+ | </code> | ||
+ | **Note:** //If **rhc scp** doesn't work, re-install the net-ssh gem specifying version 2.9.2// | ||
+ | <code> | ||
+ | gem uninstall net-ssh | ||
+ | gem install net-ssh -v 2.9.2 | ||
+ | </code> | ||
+ | <code> | ||
+ | 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 | ||
+ | </code> | ||
+ | |||
+ | ===== Add a custom domain (alias) ===== | ||
+ | |||
+ | 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\\ | ||
+ | |||
+ | <code>rhc alias add dokuwiki wiki.qclug.com</code> | ||
===== Misc Notes ===== | ===== Misc Notes ===== | ||
Line 70: | Line 132: | ||
<code>rhc ssh dokuwiki</code> | <code>rhc ssh dokuwiki</code> | ||
- | The persistent date storage location for your application can be accessed in your deploy scripts by using the following environment variable: | + | The persistent data storage location for your application can be accessed in your deploy scripts by using the following environment variable: |
<code>$OPENSHIFT_DATA_DIRs</code> | <code>$OPENSHIFT_DATA_DIRs</code> | ||
Line 77: | Line 139: | ||
http://www.openshift.org/ | http://www.openshift.org/ | ||
- | + | If you want to start over, simply delete your application and your git repository: | |
- | + | <code> | |
- | + | rhc app-delete dokuwiki | |
- | + | rm -rf dokuwiki | |
- | So Cloud Hosting could be the same thing as shared hosting... | + | </code> |
- | But Cloud hosting | + |