インストール: Nextcloud | オンラインストレージ,メール,カレンダーなど非常に多くのOffice系Webサービスをあなたの手に
DropboxやGoogle Driveのようなオンラインストレージを構築できるownCloudのフォークであるNextcloudをソースコードからインストールする。
Nextcloudはかなり高機能なソフトのため,これをインストールできれば,Google CalendarやGoogle Contact,Gmail, Skypeなど非常に多くのWebサービスを自前で扱うことが可能になる。
インストール手順
項目 | 説明 |
---|---|
配布元 | Nextcloud |
リポジトリー | nextcloud/server: ☁️ Nextcloud server, a safe home for all your data |
手順 |
|
依存情報 | |
依存先 (必須) |
|
依存先 (任意) | |
依存元 |
sh -eux <<-"EOT"
LOCAL=~/.local PKG=nextcloud VER=15.0.6 TAG=v$VER
mkdir -p "$LOCAL/var/www/html"
cd "$LOCAL/var/www/html"
if command -v git >/dev/null; then
[ -e $PKG ] || git clone --depth 1 https://github.com/nextcloud/server $PKG
cd $PKG
git fetch --depth 1 origin tag $TAG
git checkout -f $TAG
git submodule update --init --depth 1 --progress
else
[ -e $PKG-$VER ] || wget https://download.nextcloud.com/server/releases/$PKG-$VER.tar.bz2
tar -xf $PKG-$VER.*
mv $PKG-$VER $PKG
cd $PKG
fi
php occ maintenance:install --admin-user "admin" --admin-pass "admin" --database "sqlite"
# php occ maintenance:install --admin-user "admin" --admin-pass "admin" \
# --database "mysql" --database-name "nextcloud" --database-user "root" --database-pass "password"
EOT
日付 | バージョン | OS | 依存関係 |
---|---|---|---|
2019-04-28 | 15.0.6 | Ubuntu 18.04 | PHP 7.3.4, Apache HTTP Server 2.4.39 |
必須のPHPの拡張機能が多数存在するが,cURL, GD, mbstring, OpenSSL, zip, zlibがあればNextcloud 16.0.0のインストールはできた。
なお,2019-04-28時点での最新バージョン (16.0.0, 15.0.7) だと付属するアプリが少なかった。そのため,最新の1個前のバージョンを使うのがよいだろう。
~/.local/var/www/html/
をDocumentRoot
として,その下にNextcloudをインストールした。なお,ユーザー権限で動作させるために待機ポートは8080としている (参考: Apache HTTP Serverの起動設定)。
データベースにsqlite以外を使う場合,--database
オプションでデータベース種類 (sqlite, mysql, pgsql, oci) を指定し,--database-name
, --database-user
, --database-pass
で対応するデータベース名,ユーザー名,パスワードを指定する。
コマンドラインでインストールしない場合,コマンドの代わりにhttp://localhost:8080/nextcloud/にアクセスして,管理ユーザーのユーザー名とパスワードやデータベースの項目を画面に入力することでインストールする。
URL設定
デフォルトだと,アクセス時のURLが「https://example.org/nextcloud/index.php/s/Sv1b7krAUqmF8QQ」のようにindex.phpが間に入ってしまう。これを取り除く。
Apacheのmod_envとmod_rewriteが有効であり,.htaccessが書き込み可能であることが前提となる。
mod_envとmod_rewriteが有効であることは,以下のコマンドの応答で確認できる。
apachectl -M | grep -e env_module -e rewrite_module
env_module (shared) rewrite_module (shared)
何も表示されない場合,mod_envもmod_rewriteも有効になっていない。その場合,httpd.confで以下の記述のコメントアウトを解除するか,この内容を記述する。
LoadModule env_module modules/mod_env.so
LoadModule rewrite_module modules/mod_rewrite.so
最後に以下のコマンドでApacheを再起動する。
apachectl restart
URLの変更のために,config/config.phpに'overwrite.cli.url'
と'htaccess.RewriteBase'
の項目を指定する。'overwrite.cli.url'
にNextcloudのURLを指定し,'htaccess.RewriteBase'
にリダイレクト先のURLを指定する。
'overwrite.cli.url' => 'http://localhost:8080/nextcloud',
'htaccess.RewriteBase' => '/nextcloud',
URLがサブディレクトリーではなくドメインの場合,以下のように直下にリダイレクト先を変更する。
'overwrite.cli.url' => 'http://localhost:8080/',
'htaccess.RewriteBase' => '/',
設定後,nextcloud/直下で以下のコマンドにより.htaccessに内容を反映させる。
php occ maintenance:update:htaccess
起動確認
最後に,Webブラウザーでアクセスし,ログインできることを確認する。
インストールしたURL (例: http://localhost:8080/nextcloud/ )にアクセスする。
[Username]と[Password]に,インストール時に指定した内容 (例: [admin]) を入力して[Log in]を選択する。
無事にログインできればNextcloudのインストールは完了となる。
“インストール: Nextcloud | オンラインストレージ,メール,カレンダーなど非常に多くのOffice系Webサービスをあなたの手に” に対して1件のコメントがあります。