ownCloud On Dreamhost Shared Hosting

Background

I want a way to share bookmarks between user accounts across different systems. While I generally achieve this using iCloud for Safari or Sync for Firefox there are some use cases where this is not convenient nor appropriate. ownCloud provides a bookmark sharing service so I thought I would give it a try. This blog post describes my steps setting up ownCloud on a subdomain hosted on Dreamhost. Note the caveats about using ownCloud on Dreamhost in the Dreamhost wiki.

Create The Subdomain

Use the Dreamhost management panel to create a subdomain for the ownCloud site, for example, owncloud.example.com and a Dreamhost user account owncloud-user. The Dreamhost robot creates a web root directory owncloud.example.com in the home directory of owncloud-user.

Set Up The Database

ownCloud can use either SQLite or MySQL as the database. For simple installations you can use SQLite and let ownCloud create the necessary files during installation. However for more complex usage ownCloud can use a MySQL database. I used the Dreamhost MySQL panel to create a database example_owncloud with a database user account example_owncloud_user. The database was given the hostname mysql.owncloud.example.com.

Installing ownCloud

Log into the Dreamhost shared host using ssh:

$ ssh owncloud-user@owncloud.example.com

Download the ownCloud tar file into the home directory and check that the calculated md5 hash equals that written in owncloud-5.0.13.tar.bz2.md5.

Because I wanted my ownCloud site to appear at the URL owncloud.example.com rather than owncloud.example.com/owncloud I deviated from the standard instructions and used the following copy command:

$ cp -r owncloud/* owncloud.systeminterrupt.me/

I did not have to make any changes to the directory permissions.
I then used a browser to access owncloud.example.com and continued the ownCloud setup. As I had created a MySQL database for the ownCloud installation I clicked into the Advanced options after entering the administrator username and password but before clicking Log In.

I then logged back into the ownCloud site and checked the administration page to make sure the upload file size had changed and the warning had gone.

Setting Secure Hosting

Using the Dreamhost management panel I enabled the free secure hosting feature for owncloud.example.com. Then I logged back into the admin page for owncloud.example.com and set the Enforce HTTPS option. Use the URL https://owncloud.example.com when you log in. It may take a few minutes for the Dreamhost robot to set up the security certificate. Remember if you use the free secure hosting option you will initially get a browser warning and need to accept the certificate.

Setting Up Users

Once the ownCloud site was functioning I created a standard user account. Initially I could only give the new user administrator permissions. So I logged into that ownCloud standard user account and used the administrator page to create a standard user permission group. I then logged out of the standard user and back into the administrator account and removed administrator permissions from the standard user.