コンパクトなPC、Intel NUCにNextcloudサーバをインストールしたいと思います。
何を以て簡単かと申しますと。
近年公開されたLinuxディストリビューションのいくつかを、実際にIntel NUCにインストールしてみました。
この中から、Fedora 28 + Snapによるサーバ構築が、最も手間がかからないお勧めな方法ということで、ご紹介させて頂くかたちです。
Intel NUCに限定せず、通常の一般的なPCへインストールする場合も同じ流れになります。
目次
Nextcloudサーバインストール手順 Fedora 28 snap版
使用する機材
PC本体
4コアCPUを搭載、2.5インチHDD内蔵可能な小型PCを使用しました。メモリーとHDDを組み合わせることで、PCとして使用できます。メモリー
NUC6CAYHに適合するメモリーです。HDD
厚さ7mmの2TBを選択しました。NUC6CAYHの2.5インチベイは厚さ9.5mmまで対応のようです。7mmのHDDの取り付けは特に問題ありませんでした。
ディスプレイ、キーボード、マウス
デスクトップPCとして利用する場合、HDMI対応のディスプレイ、USBキーボード、マウスが必要です。
サーバとして利用する場合、OSインストール時にこれらが必要になりますが、インストール後はリモート管理が可能になります。
Fedora 28インストール
全体的な構築手順ですが。
OS(Fedora)インストール→snapインストール→snapでnextcloudインストール
という流れになります。
rootユーザーでログインしてコマンドを実行するため、sudoは省略させて頂きました。
- まずは、こちらの記事の手順でFedora 28をインストールします。固定IPアドレスの設定は保留したほうが安全かもしれません。
- パーティションの拡張も行っておきます。
- Fedoraのアップデートも忘れず&こまめに。
dnf up
環境依存かもしれませんが。固定IPアドレスを設定した場合、snapでnextcloudをインストール時、snap storeに接続できない場合がありました。
このため、最初はIPアドレスの固定設定は行わず、Nextcloudをインストールした後に行いました。
Snapインストール
- snapをインストールします。
dnf in snapd
- snapでNextcloudをインストールします。
snap install nextcloud
- ファイアウォールを設定を変更して、他のPCからアクセス可能にします。
firewall-cmd --permanent --add-service=http firewall-cmd --permanent --add-service=https firewall-cmd --reload
- IPアドレスを固定設定にする場合、ここで設定します。こちらの記事の18番の手順になります。
Nextcloud初期設定
初期設定が完了してNextcloudサーバを使用できる状態になりました。
Nextcloudサーババージョン
2018年5月現在、x86_64版Fedora 28のsnapでインストールしたNextcloudのバージョンは13.0.2、最新バージョンのようです。
2G、4GB以上のファイルのアップロードは可能?
6GB以上のファイルが問題なくアップロードできました。
アップロード速度は10~20MB/s程度のようです(環境により異なります)。
Nextcloudの管理コマンド
Nextcloudの管理用に次のコマンドが利用可能のようです。
- nextcloud.occ
- nextcloudの管理コマンド
- nextcloud.enable-https
- https有効化
- nextcloud.disable-https
- https無効化
- nextcloud.manual-install
- 手動インストール
- nextcloud.mysqldump
- mysqlのバックアップ
- nextcloud.mysql-client
- mysqlクライアント
httpsの有効化
nextcloud.enable-httpsコマンドにlets-encrypt、self-signed、customを指定することで有効化できるようです。
自宅LANと、外出先からVPN接続しての利用を想定して。下記のコマンドでhttpsを有効化したところ、問題なくhttpsでアクセスできるようになりました。
nextcloud.enable-https self-signed
HTTP/2は有効?
近年、ApacheやNginx等の各種httpサーバのHTTP/2対応が進んでいる状況です。
HTTPSの有効化とともに、HTTP/2も有効になる場合も多いですが。
ざっと調べた限り、snap版のNextcloudは、HTTP/2ではなくHTTP/1.1で通信しているようです。(下図protocol列)snap版のNextcloudは、HTTP/2の利点を検討している段階のようです。
snap版は、HTTP/2に限らず、新しい技術について、十分な利点が確認できれば取り込まれるスタンスのようです。
snapを利用することで、サーバの構築がずいぶんと簡単になりました。
さて。より実用的な構成を目指して。
他のNextcloudサーバからデータを移行する方法や、夜間などに自動バックアップする方法を考えてみたいと思います。