Wallos:VPSに自分専用のサブスクリプション管理ツールをインストールする方法

読了時間 6分
Tropic
Wallos:VPSに自分専用のサブスクリプション管理ツールをインストールする方法

Wallos:VPSに自分専用のサブスクリプション管理ツールをインストールする方法

サブスクリプションは、1件ずつ見るとあまり高く感じません。クラウドストレージに数ドル、音楽サービスに毎月の料金、ドメインに年1回の料金、さらにVPN、AIサービス、業務用ツールなどです。問題が見えてくるのは後になってからです。支払日、カード、通貨がばらばらになり、無料トライアルがいつの間にか有料プランへ移行していることもあります。

Wallosは、定期的な支出を1つのダッシュボードにまとめ、直近の引き落としを表示し、統計を計算して、事前に通知を送ります。アプリケーションを自分のVPSに配置できるため、支出の全一覧を外部の金融サービスへ渡す必要がありません。

以下では、Wallosが表計算ソフトとどう違うのか、どのようなサーバーが必要なのか、Docker Composeでアプリケーションをインストールする方法を説明します。

Wallosとは

Wallosは、サブスクリプションや定期的な支払いを管理するための、無料かつオープンソースのWebアプリケーションです。自宅サーバー、NAS、VPSにインストールし、通常のブラウザから利用できます。

各サブスクリプションはカード形式で表示され、名前、料金、通貨、支払い周期、次回の引き落とし日、カテゴリー、支払い方法を記録できます。何十通ものメールや銀行明細を確認する代わりに、必須の支出を1つのカレンダーで把握できるようになります。

Wallosはオンラインバンキングではなく、ユーザーに代わってサブスクリプションを解約する機能もありません。支払い情報は最初に手動で登録し、プラン、料金、支払日が変わったときに記録を更新する必要があります。多少の手間はかかりますが、銀行口座へのアクセスをアプリケーションに許可する必要はありません。

サブスクリプション管理ツールが必要な理由

表計算ソフトでも、サービス名と料金を保存できます。難しくなるのは、月額、四半期、年額のプランを同時に利用している場合です。

年間120ユーロのサブスクリプションと月額10ユーロのサブスクリプションは、総額が同じでも受ける印象が異なります。Wallosは支払いを同じ基準でまとめ、小さなサービスの合計が月間または年間でいくらになるのかを把握しやすくします。

特に、次のような場合に便利です。

  • デジタルサブスクリプション、ドメイン、VPS、SaaSサービスが増えている。
  • 複数の通貨で支払いを行っている。
  • 家族で共通プランを利用し、複数のカードを使っている。
  • フリーランサーやチームが、異なる日付に業務用ツールの料金を支払っている。

Wallosの最大の価値は、引き落とし前に現れます。事前に通知を受け取れば、不要なプランをまだ解約できます。

Wallosの主な機能

カテゴリー、支払い方法、利用者

記録は、娯楽、仕事、インフラ、通信、学習など、独自のカテゴリーに分けられます。支払い方法と家族の利用者も個別に設定できます。これにより、業務支出と個人支出を分けたり、特定のカードに紐づいたサブスクリプションを見つけたりしやすくなります。

カレンダー、統計、予算

Wallosは直近の支払いを表示し、支出を可視化します。カレンダーでは年次更新が多い月を確認でき、統計では最も多く支出しているカテゴリーを把握できます。

複数通貨

サブスクリプションは複数の通貨で保存し、基準通貨へ換算できます。為替レートの自動更新にはFixer APIが対応しています。一部のサービスを米ドル、別のサービスをユーロで支払い、予算はさらに別の通貨で管理している場合に便利です。

引き落とし前の通知

リマインダーは、メール、Telegram、Discord、Pushover、Gotify、webhookで受け取れます。個人サーバーではTelegramまたはメールが使いやすく、webhookを利用すればWallosを自動化システムや自作ボットと連携できます。

複数ユーザーとロシア語対応

1つのWallos環境に複数のユーザーアカウントを作成できます。インターフェースはロシア語を含む多くの言語へ翻訳されています。また、二要素認証と、OIDC/OAuthによるシングルサインオンにも対応しています。

APIとAIによる提案

Wallosには、独自の連携を作るためのAPIがあります。現行バージョンでは、ChatGPT、Gemini、またはローカルのOllamaを利用した提案機能に対応しています。

この機能は必須ではありません。プライバシーを最大限に重視する場合は、ローカルモデルを使用するか、AIを接続しないほうが安全です。外部プロバイダーを利用すると、リクエストに必要なデータはVPSの外部で処理されます。

Wallos、表計算ソフト、クラウド型トラッカーの比較

項目表計算ソフトクラウド型トラッカーWallos
支払いカレンダー設定が必要通常は利用可能利用可能
通知自動化が必要通常は利用可能利用可能
複数通貨数式またはプラグインサービスによる利用可能
自分のサーバーにデータを保存ローカル保存の場合いいえはい
メンテナンス最小限プロバイダーが担当所有者が担当
銀行口座へのアクセス不要必要な場合がある不要

Wallosは、表計算ソフトでは不便になってきたものの、銀行口座を外部サービスに接続したくない人に適しています。自分で管理できる代わりに、更新、サーバー保護、バックアップも自分で行う必要があります。

Wallosのサーバー要件

公式の手順では、CPUとRAMの正確な最小要件は指定されていません。コンテナでインストールするにはDockerが必要です。WallosはPHPとローカルのSQLiteデータベースを使用するため、個人用の環境に高性能なサーバーは必要ありません。

実用的な初期構成は次のとおりです。

  • 1 vCPU。
  • 1 GB RAM。
  • 10 GBのSSDまたはNVMe。
  • 最新状態に保たれたLinuxシステム。
  • インターネットから常時アクセスする場合はドメイン。

512 MBのメモリでもコンテナを動かせる可能性はありますが、VPS上でOS、Docker、リバースプロキシに使える余裕がほとんど残りません。Nginxやほかの小規模アプリケーションも同時に動かすなら、2 GB RAMの構成がより快適です。

Docker ComposeでVPSにWallosをインストールする

ここでは、Docker EngineとDocker Composeプラグインがすでにインストールされていることを前提とします。コマンドはsudo権限で実行します。

手順1. ディレクトリを作成する

sudo mkdir -p /opt/wallos
cd /opt/wallos

手順2. Composeファイルを作成する

sudo nano compose.yml
services:
  wallos:
    container_name: wallos
    image: bellamy/wallos:latest
    ports:
      - "127.0.0.1:8282:80"
    environment:
      TZ: "Europe/Berlin"
    volumes:
      - "./db:/var/www/html/db"
      - "./logos:/var/www/html/images/uploads/logos"
    restart: unless-stopped

TZには自分のタイムゾーンを指定してください。dblogosディレクトリはコンテナの外部に置かれるため、イメージを更新してもデータベースとロゴは保持されます。

ポートは127.0.0.1にバインドされているため、管理画面がインターネットへ直接公開されることはありません。外部アクセスはNginxとHTTPSを使って設定します。

手順3. コンテナを起動する

sudo docker compose up -d
sudo docker compose ps

エラーを確認するには、次のコマンドを実行します。

sudo docker compose logs --tail=100 wallos

手順4. ドメインとHTTPSを設定する

ドメインのDNSレコードをVPSのIPアドレスへ向けてから、NginxとCertbotをインストールします。

sudo apt update
sudo apt install -y nginx certbot python3-certbot-nginx
sudo nano /etc/nginx/sites-available/wallos

次の設定を追加します。

server {
    listen 80;
    server_name wallos.example.com;

    location / {
        proxy_pass http://127.0.0.1:8282;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

サイトを有効化し、証明書を発行します。

sudo ln -s /etc/nginx/sites-available/wallos /etc/nginx/sites-enabled/wallos
sudo nginx -t
sudo systemctl reload nginx
sudo certbot --nginx -d wallos.example.com

管理画面はhttps://wallos.example.comで開けるようになります。

初期設定

初めてWallosを開いたら、アカウントを作成し、次の設定を行います。

  1. 基準通貨を選択する。
  2. カテゴリーと支払い方法を設定する。
  3. 必要に応じて家族の利用者を追加する。
  4. 二要素認証を有効にする。
  5. 通知を接続し、テストを送信する。
  6. 実際のサブスクリプションをいくつか登録する。

支払い周期と次回支払日は特に正確に入力してください。通知と予測はこれらのデータに依存します。

メモ欄にカード番号全体、パスワード、リカバリーコードを保存しないでください。Wallosは支払いを管理するツールであり、パスワード管理ツールの代わりにはなりません。

更新とバックアップ

コンテナを更新するには、次のコマンドを実行します。

cd /opt/wallos
sudo docker compose pull
sudo docker compose up -d
sudo docker image prune -f

更新前にバックアップを作成してください。重要なデータはdblogosディレクトリに保存されています。

cd /opt/wallos
sudo docker compose stop
sudo tar -czf /root/wallos-backup-$(date +%F).tar.gz db logos compose.yml
sudo docker compose start

アーカイブは別の端末または独立したストレージへ移してください。同じVPS上に置いたバックアップは、サーバーを削除した場合やディスクが破損した場合には役に立ちません。

Wallosをどこで動かすのがよいか

自宅サーバーが24時間稼働しているなら、ローカルアクセスには適しています。スマートフォンやパソコンから場所を問わず管理画面を開きたい場合や、自宅回線の状態に関係なく通知を受け取りたい場合は、VPSのほうが便利です。

Wallosに高価な構成は必要ありません。tropic.hostでは、1~2 GB RAMの小規模なLinux VPSから始め、Dockerをインストールし、HTTPSを設定したNginxの背後に管理画面を配置できます。ほかのセルフホスト型サービスを追加する場合も、Wallosを別のサーバーへ移すことなくリソースを増やせます。

VPSを利用しても、基本的なセキュリティ対策は必要です。コンテナとシステムを更新し、不要なポートを開放せず、強力なパスワードを使用し、2FAを有効にして、バックアップは別の場所に保管してください。

まとめ

Wallosは、範囲は狭いものの厄介な問題を解決します。定期的な支払いが見えない支出ではなくなります。分散したメール、明細、リマインダーの代わりに、日付、通貨、カテゴリー、通知をまとめた1つの管理画面を利用できます。

デジタルサブスクリプションが多い人、家族、フリーランサー、小規模チームに役立つサービスです。手動入力は必要ですが、その代わり、ユーザーの支出状況は自分のサーバーに保存されます。

FAQ

Wallosは無料で利用できますか?

はい。WallosはGPLv3ライセンスで公開されているオープンソースソフトウェアです。VPSに配置する場合は、インフラ費用のみが発生します。

Wallosは銀行カードからサブスクリプションを自動的に見つけますか?

いいえ。記録は手動で追加します。アプリケーションは銀行口座へのアクセスを必要としません。

WallosにはどのようなVPSが必要ですか?

個人利用であれば、通常は1 vCPUと1 GB RAMで十分です。2 GB RAMのサーバーなら、Nginx、更新処理、ほかの軽量コンテナのための余裕を確保できます。

Wallosはロシア語に対応していますか?

はい。プロジェクトにはロシア語のローカライズが含まれており、インターフェース設定から選択できます。

Wallosを復元するには何をコピーすればよいですか?

dblogosディレクトリ、およびcompose.ymlファイルを保存してください。バックアップはVPSの外部に保管する必要があります。