Nextcloud を Docker 環境にデプロイする

NextCloud 概要

NextCloud(ネクストクラウド)は自前でオンラインストレージを構築できるパッケージです。
NextCloud は ownCloud(オウンクラウド)のフォークからスタートしました。
そのため、機能的には ownCloud とよく似ていますが、独自拡張された部分も多くあります。
(まるで MySQL と MariaDB のようですね)。
NextCloud の最新版は Nextcloud 15 です。

商用サービスだと Dropbox・OneDrive・Google ドライブが有名です。
後発の OneDrive や Google ドライブは他サービスとのシナジーを図り多機能化しているので、シンプルな Dropbox をイメージすると分かりやすいと思います。

導入

テンプレートには無い

先日、Docker ホストに導入した Portainer には「App Templates」機能がありコンテナをデプロイできるのですが、ストレージ系のテンプレートは以下の3つのみでした。

  • Minio
    AWS S3 互換のオブジェクトストレージ。
  • Scality S3
    AWS S3 互換のオブジェクトストレージ。
  • File browser
    ファイルを Webブラウザで管理するためのパッケージ。

公式サイトから導入

Docker 公式サイトを確認すると、Docker Hub(Docker コンテナ共有サービス)にコンテナが公開されています。

  • Install – Nextcloud
    [Docker image] ボタンを押下すると、導入方法や起動方法が記載されたページへ遷移します。

base on Docker Hub

Copy and paste to pull this image
docker pull nextcloud

Using the apache image
The apache image contains a webserver and exposes port 80. To start the container type:

$ docker run -d -p 8080:80 nextcloud

コンテナ取得

# docker pull nextcloud
Using default tag: latest
latest: Pulling from library/nextcloud
Status: Downloaded newer image for nextcloud:latest

起動

# docker run -d -p 8080:80 nextcloud

環境

  • Nextcloud
    バージョン 15.0.2
  • DB
    SQLite

注意点

Docker Hub の NextCloud はバックエンドに SQLite を使っています。
そのため、デスクトップアプリを利用したファイル同期には向かないようなので、本番運用には使用しないほうが無難でしょう。