Taildriveを紹介しましたが、「ファイル同期」という点に絞り、DropboxやOneDriveのような使い勝手を求めるなら、Nextcloudなどの自前クラウドを利用するほうが圧倒的に快適になります。それぞれ比較すると次のような形になります。
| 項目 | Nextcloud | Taildrive (Tailscale) |
|---|---|---|
| 同期の仕組み | Dropbox方式(ローカルに保存) | ネットワークドライブ方式(直接操作) |
| オフライン | ◯ 外出先(電波なし)でも編集可能 | × ネットがないとファイルが見えない |
| スマホ連携 | 強力(写真の自動アップロード等) | 閲覧のみ(手動でDL/ULが必要) |
| 導入コスト | 高い(DB設定やメンテが必要) | 極低(コマンド1本で完了) |
| ストレージ | 同期する分だけ自分のPC容量を食う | サーバー(Ubuntu)の容量だけ使う |
Nextcloud が向いている人
- スマホの写真を自動でバックアップしたい。
- 飛行機や地下など、オフライン環境でもファイルを編集したい。
- カレンダーや連絡先、共同編集機能もセットで使いたい。
- サーバーのメンテナンス(アップデート作業など)を楽しめる。
Taildrive が向いている人
- 設定に時間をかけたくない。今すぐ共有したい。
- 自分のPCのストレージ容量を節約したい(必要な時だけ覗きに行く)。
- 基本、ネットに繋がっている環境でしか作業しない。
- ファイル同期のためだけに重いソフトを入れたくない。
Nextcloudをセットアップする
Nexcloudのセットアップは簡単です。Dockerの準備ができているなら、最もメンテナンスが楽で安定している SQLite版(DB設定不要) または MariaDB版(本格運用向け) の構成がおすすめです。ここでは、「標準的なMariaDB構成」を紹介します。
まずはディレクトリを作成し、Docker用の設定ファイルを作成します。
mkdir ~/nextcloud
cd ~/nextcloud
nano docker-compose.yml
docker-compose.yml に貼り付ける内容は下記になります(今後ONLYOFFICEを同じサーバにインストールする場合の設定も入れています)。データベース用パスワードは各自で変更しておいてください。
services:
db:
image: mariadb:10.6
restart: always
command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
volumes:
- ./db:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=rootpass # 任意のパスワードに変更
- MYSQL_PASSWORD=nextcloudpass # 任意のパスワードに変更
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
app:
image: nextcloud
restart: always
ports:
- 8080:80
links:
- db
volumes:
- ./data:/var/www/html
environment:
- MYSQL_PASSWORD=nextcloudpass # 上記MYSQL_PASSWORDと同じ
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
- MYSQL_HOST=db
- NEXTCLOUD_TRUSTED_DOMAINS=ホスト名 nextcloud-app-1 # ホスト名またはIPアドレスを入力
- OVERWRITEHOST=ホスト名:8080 # ホスト名またはIPアドレスを入力
- OVERWRITEPROTOCOL=http
networks:
- default
- onlyoffice_net
networks:
default:
onlyoffice_net:
external: true
- ポート番号:
8080を使っています。もし他のサービスと重なる場合は9000:80など左側の数字を変更してください。 - データの保存先:
~/nextcloud/dataにすべてのファイルが保存されます。バックアップはこのフォルダを丸ごとコピーするだけなので簡単です。
起動ファイルを保存(Ctrl+O, Enter)し、終了(Ctrl+X)したら、以下のコマンドで起動します。
cd ~/nextcloud
docker compose up -d
あとはブラウザで http://(サーバのIPアドレス):8080 を開きます。
WebブラウザからNextcloudを使う
管理者アカウントの作成画面が出るので、好きなユーザー名とパスワードを入力します。

必要なアプリを入れます。

数分待てば、Nextcloudのダッシュボードが表示されます。色々触ってみてください。

ログイン画面でエラーが表示される場合
ログイン画面で下記のようなエラーが出た場合の対処法。

所有者とパーミッションを修正
sudo chown -R www-data:www-data /opt/docker/nextcloud/data/config
sudo chmod 750 /opt/docker/nextcloud/data/config
確認
ls -la /opt/docker/nextcloud/data/ | grep config
データディレクトリも同様に権限を修正しましょう。
sudo chown -R www-data:www-data /opt/docker/nextcloud/data
sudo chmod 750 /opt/docker/nextcloud/data


