在 Docker 上架設 ownCloud

ownCloud 是一套自由且開放原始碼的雲端儲存解決方案,即俗稱之「雲端硬碟」。其分為伺服器與客戶端,且開發已行之有年,支援十分完整,包括 Windows、macOS、Linux、Android、iOS 以及 WebDAV 等。

因其分為伺服器與客戶端,我們需要先架設伺服器端才可使用 ownCloud 的客戶端。

部署 ownCloud

請在你裝有 Docker daemon 的伺服器上執行以下指令,其中「<MYSQL_ROOT_PASSWORD>」請替換為你指定的 MySQL 管理者密碼。(建議隨機產生一個)

$ docker run --name owncloud-mysql -e MYSQL_ROOT_PASSWORD=<MYSQL_ROOT_PASSWORD> -d mysql
$ docker run --name=owncloud -d -p 80:80 -v /data/owncloud/:/data/owncloud --link owncloud-mysql:mysql owncloud:8.1
$ docker exec -it owncloud /bin/sh -c 'chown -R www-data:www-data /data/owncloud/; chmod -R 777 /data/owncloud/; echo "\n<Directory \"/var/www\">\nAllowOverride All\n</Directory>" >> /etc/apache2/conf-available/docker-php.conf; /etc/init.d/apache2 reload'

這段指令會使你的 ownCloud 伺服器連線至 MySQL 資料庫容器並發佈到 80 連線埠。其中 ownCloud 的資料儲存位置將會是「/data/owncloud」。

設定 ownCloud

接著,請打開 http://<server-ip-address>,會看到類似下圖的畫面:

請先決定你的 ownCloud 管理者賬號及密碼並填入,然後點擊「儲存空間和資料庫」,將設定資料欄位以圖所示填入,且填入先前設定的資料庫密碼,然後按下「完成設定」。

部署完成

然後就設定完畢了!你應該會看到如下的畫面:

這是 ownCloud 客戶端的下載連結,請依需求安裝對應的客戶端。

(Cover photo from https://owncloud.org/press/, edited by Birkhoff Lee)