最終更新日: 2025年11月20日
テンプレート説明
Bluesky PDS(Personal Data Server)は、分散型ソーシャルネットワークBlueskyのパーソナルデータサーバーです。AT Protocol(Authenticated Transfer Protocol)上で動作し、ユーザーが自身のソーシャルメディアデータを完全に管理できる環境を提供します。自己ホスティングすることで、データの所有権とプライバシーを確保しながら、Blueskyネットワーク全体とフェデレーションが可能です。
本テンプレートは、ConoHa VPS上でBluesky PDSをワンコマンドで構築するためのスタートアップスクリプトです。Docker環境とCaddyウェブサーバーを使用し、Let’s Encryptによる自動HTTPS化に対応しています。
スタートアップスクリプトのテンプレートを利用してサーバー作成を行う手順はご利用ガイドを参照してください。
重要
本テンプレートでは、インストール完了後もサービスは停止状態を維持します。以下の手順に従ってサービスを起動し、初期設定を行ってください。
メモ
Bluesky PDSを正常に運用するには、独自ドメインの取得が必須です。ConoHaの逆引きDNSホスト名をハンドルとして使用すると、ローカルでは動作しますが、PLCディレクトリに登録されず、他のユーザーからはハンドルが無効として扱われます。独自ドメインを取得し、適切なDNSレコード(A/AAAAレコード、TXTレコード)を設定してください。
仕様
対応OSイメージ
Ubuntu 24.04 LTS
主要ソフトウェア
| ソフトウェア名 | バージョン | ライセンス | 用途 |
|---|---|---|---|
| Bluesky PDS | latest | MIT / Apache 2.0 | パーソナルデータサーバー本体 |
| Docker | latest | Apache 2.0 | コンテナ実行環境 |
| Docker Compose | latest | Apache 2.0 | マルチコンテナ管理 |
| Caddy | latest | Apache 2.0 | リバースプロキシ・自動HTTPS |
| SQLite | latest | Public Domain | データベース |
スタートアップスクリプト情報
| 項目 | 説明 |
|---|---|
| アプリケーション利用ポート | 80/tcp (HTTP), 443/tcp (HTTPS) |
| インストールディレクトリ | /pds (シンボリックリンク: /opt/pds) |
| 管理スクリプト | /root/bluesky-pds-*.sh |
| 初期状態 | サービス停止中 |
その他
最小システム要件
- CPU: 1コア
- メモリ: 最小1GB、推奨2GB以上
- ネットワーク: パブリックIPv4アドレス、独自ドメイン
メモ
公式では1GBメモリでの動作報告がありますが、同時接続やクローラー負荷を考慮すると2GB以上が推奨されます。小規模運用(1-20アカウント)であれば1GBでも動作可能です。
利用手順
メモ
スタートアップスクリプトにてアプリケーションのインストールが完了するまで数分かかります。
インストール完了後、rootディレクトリに「bluesky-pds-info.txt」というファイルが作成されますのでご確認ください。
ファイルが存在しない場合、作成されるまでしばらくお待ちください。
スタートアップスクリプトの実行状況は、SSH接続後に以下のコマンドで確認できます:
# tail -f /var/log/bluesky-pds-setup.log
Step 0: DNS設定
ドメインのDNSレコードを設定します。
| レコードタイプ | 名前 | 値 |
|---|---|---|
| A | @ | VPSのIPアドレス |
| A | * | VPSのIPアドレス |
重要
ワイルドカードレコード(*)は、Blueskyのハンドルシステム(サブドメイン形式)に必須です。DNS設定後、伝播に数分~数十分かかる場合があります。
Step 1: セキュリティグループについて
ConoHa VPS(Ver.3.0)ではサーバー毎にIPアドレスまたはポートでトラフィックを制御するセキュリティグループ(仮想ファイアウォール)が設定されます。
本テンプレートをご利用の場合は、予め利用するポートの通信許可設定が必要です。
詳細はセキュリティグループを参照してください。
以下のポートを開放してください:
| ポート番号 | プロトコル | 用途 | 必須/オプション |
|---|---|---|---|
| 22 | TCP | SSH | 必須 |
| 80 | TCP | HTTP(TLS認証用) | 必須 |
| 443 | TCP | HTTPS | 必須 |
重要
テンプレート作成直後は、Bluesky PDSサービスが停止状態です。以下の手順に従って安全にサービスを起動し、設定を行ってください。
Step 2: VPSへの接続
作成したVPSにSSHで接続します。
# SSHでVPSに接続 # ssh root@<VPSのIPアドレス>
Step 3: サービスの起動とPDS初期セットアップ
管理スクリプトを実行してBluesky PDSをインストールします。
# PDS起動スクリプトの実行 # /root/bluesky-pds-start.sh
インストール中に以下の情報を対話形式で入力します:
- Domain: 使用する独自ドメイン名(逆引きDNSがデフォルト表示されますが、独自ドメインの入力を推奨)
- Admin email: 管理者メールアドレス(デフォルト: admin@<ドメイン>)
重要
ドメインには必ず独自ドメインを指定してください。ConoHaの逆引きDNSホスト名を使用すると、Blueskyネットワークでの正常な動作が保証されません。
PDSアカウントは後から作成可能です。
インストール完了後、PDSサービスが自動的に起動します。
Step 4: SMTP設定(推奨)
メール認証機能を有効にするため、SMTP設定を行います。起動スクリプト実行の最後にSMTP設定を行うか確認されます。
後から設定する場合は、以下のコマンドを実行します:
# SMTP設定スクリプトの実行 # /root/bluesky-pds-smtp.sh
以下の情報を入力します:
- From email: 送信元メールアドレス(必須)
- SMTP host: SMTPサーバーのホスト名(空欄の場合はsendmailモード)
- Use TLS?: TLS使用の有無(y/n)
- TLS mode: 1=Implicit TLS (465), 2=STARTTLS (587)
- SMTP port: ポート番号(空欄で自動設定)
- SMTP user: 認証ユーザー名
- SMTP password: 認証パスワード
メモ
Gmail等の外部SMTPサービスを使用する場合は、アプリパスワードの発行が必要です。sendmailモードを使用する場合は、事前にPostfix等のMTAをインストール・設定してください。
Step 5: アカウント作成
招待コードを生成してアカウントを作成します。
# 招待コード生成 # pdsadmin create-invite-code
生成された招待コードを使用して、Blueskyアプリ(https://bsky.app/)からアカウントを作成します:
- Blueskyアプリにアクセス
- サインアップ画面で「カスタムホスティングプロバイダ」を選択
- 自身のドメイン名を入力
- 招待コードを使用してアカウント作成
メモ
サブドメインのTLS証明書はオンデマンドで作成されるため、ハンドルがアクセス可能になるまで10-30秒かかる場合があります。最初の投稿やプロフィールが表示されない場合は、30秒待ってから再度投稿してください。
Step 6: システム診断
PDSの動作状況を確認します。
# システム診断スクリプトの実行 # /root/bluesky-pds-diagnose.sh
このスクリプトは以下の情報を表示します:
- システム情報(OS、メモリ、ディスク使用量)
- Dockerとコンテナの状態
- ポート80/443のLISTEN状態
- ファイアウォール設定
- DNS解決状況
- HTTPS応答確認
- サービスログ
管理スクリプト一覧
| スクリプト名 | 機能 | 使用例 |
|---|---|---|
| bluesky-pds-start.sh | PDSのインストール・再インストール | # /root/bluesky-pds-start.sh |
| bluesky-pds-smtp.sh | SMTP設定の変更 | # /root/bluesky-pds-smtp.sh |
| bluesky-pds-change-domain.sh | ドメイン変更 | # /root/bluesky-pds-change-domain.sh -d new.example.com |
| bluesky-pds-diagnose.sh | システム診断 | # /root/bluesky-pds-diagnose.sh |
セキュリティグループ
以下のポートを開放してください:
| ポート番号 | プロトコル | 用途 | 必須/オプション |
|---|---|---|---|
| 22 | TCP | SSH | 必須 |
| 80 | TCP | HTTP(TLS認証用) | 必須 |
| 443 | TCP | HTTPS | 必須 |
セキュリティ重要
SSH(ポート22)へのアクセスは、管理者のIPアドレスのみに制限することを強く推奨します。ポート80はLet’s EncryptによるTLS証明書の検証に必要です。
アプリケーションの具体的な利用方法につきましては、サービス開発元やサービス提供元の公式サイト、Wikiなどで最新情報をご確認ください。
外部リンク
| サイト名 | URL | 説明 |
|---|---|---|
| Bluesky公式サイト | https://bsky.app/ | Blueskyソーシャルネットワーク |
| Bluesky PDS GitHubリポジトリ | https://github.com/bluesky-social/pds | ソースコード・ドキュメント |
| AT Protocol公式サイト | https://atproto.com/ | AT Protocolの技術仕様 |
| AT Protocol GitHubリポジトリ | https://github.com/bluesky-social/atproto | AT Protocolソースコード |
| AT Protocol PDS Admins Discord | https://discord.com/invite/UWS6FFdhMe | コミュニティサポート |