From Alpine Linux
Revision as of 14:26, 15 November 2012 by Larena (talk | contribs) (let the wizard create the db)
Jump to: navigation, search
Underconstruction clock icon gray.svg
This material is work-in-progress ...

Do not follow instructions here until this notice is removed.
(Last edited by Larena on 15 Nov 2012.)

ownCloud is WedDAV-based solution for storing and sharing on-line your data, files, images, video, music, calendars and contacts. You can have your ownCloud instance up and running in 5 minutes with Alpine!


ownCloud is available from Alpine 2.5 and greater.

Before you start installing anything, make sure you have latest packages available. Make sure you are using a 'http' repository in your /etc/apk/repositories and then run:

apk update

Tip: Detailed information is found in this doc.


First you have to decide which database to use. Follow one of the below database alternatives.


All you need to do is to install the package

apk add owncloud-sqlite

Warning: sqlite+owncould is known to have some problem, so do not expect it work. This note should be removed when sqlite+owncould works.
(Still a problem at 2012-11-15)


Install the package

apk add owncloud-psql

Next thing is to configure and start the database

/etc/init.d/postgresql setup /etc/init.d/postgresql start

Next you need to create a user, and temporary grant CREATEDB privilege.

# psql -U postgres postgres=# CREATE USER owncloud WITH PASSWORD '<%STRONG_PASSWORD%>'; postgres=# ALTER ROLE owncloud CREATEDB; postgres=# \q

Note: The above commands creates the user 'owncloud' with a password you provide. Remember these settings, you will need them later when setting up owncloud


Install the package

apk add owncloud-mysql mysql-client

Now configure and start mysql

/etc/init.d/mysql setup /etc/init.d/mysql start /usr/bin/mysql_secure_installation

Follow the wizard to setup passwords etc.

Note: Remember the usernames/passwords that you set using the wizard, you will need them later.

Next you need to create a user, database and set permissions.

mysql -u root -p CREATE DATABASE owncloud; GRANT ALL PRIVILEGES ON owncloud.* TO "mycloud"@"localhost" IDENTIFIED BY "mypassword"; FLUSH PRIVILEGES; EXIT

Note: Replace the above 'mycloud' and 'mypassword' to something secure
Underconstruction clock icon gray.svg
Todo: The mysql setup is not yet tested and verified. Please update/bugfix the mysql-notes above and remove this note when verified that it works.


Next thing is to choose, install and configure a webserver. Choose one alternative from below (or setup a webserver of your choise)


Install the package

apk add lighttpd

Make sure you have FastCGI enabled in lighttpd:

Contents of /etc/lighttpd/lighttpd.conf

... include "mod_fastcgi.conf" ...

Start up the webserver

/etc/init.d/lighttpd start

XYZ webserver

You could try installing some other webserver and document it here

  • Apache2
  • cherokee
  • other...


Link owncloud installation to web server directory:

ln -s /usr/share/webapps/owncloud /var/www/localhost/htdocs/owncloud

Other settings


Consider adding the following line for additional security to the owncloud configuration file, where the password database is stored:

Contents of /etc/lighttpd/lighttpd.conf

... url.access-deny = ("config.php") ...

Folder permissions

The web server user needs to have ownership on some dirs. This is fixed by running the following commands:

chown -R lighttpd.lighttpd /etc/owncloud chown -R lighttpd.lighttpd /usr/share/webapps/owncloud/apps chown -R lighttpd.lighttpd /var/lib/owncloud/data

Additional packages

Some large apps, such as texteditor and videoviewer are in separate package:

apk add owncloud-texteditor owncloud-videoviewer

Configure and use ownCloud


Point your browser at http://<%MY_SERVER_IP%>/owncloud and follow the on-screen instructions to complete the installation, supplying the database user and password created before.


There are clients available for many platforms, Android included: