はじめに
HedgeDocは、複数ユーザーがリアルタイムでドキュメントを編集できるコラボレーティブなMarkdownエディタです。チーム内でのメモやドキュメント作成によく利用されます。VPS(Virtual Private Server)上にHedgeDocをセルフホストすることで、データの完全な管理とプライバシーの確保が可能です。本ガイドでは、Dockerを使用してVPSにHedgeDocをインストールする手順を詳しく解説します。
必要条件
- VPS:適切なVPSプロバイダーを選びましょう。以下は主要なオプションの比較です。
| プロバイダー | 月額料金 | RAM | ディスク容量 | CPU |
|---|---|---|---|---|
| Contabo VPS | 5.99 EUR | 4 GB | 50 GB | 2 Cores |
| Hetzner Cloud | 4.15 EUR | 2 GB | 20 GB | 1 Core |
| DigitalOcean | 6 USD | 2 GB | 1 vCPU | 1 Core |
| Vultr | 6 USD | 2 GB | 1 vCPU | 1 Core |
| Linode (Akamai) | 5 USD | 2 GB | 1 vCPU | 1 Core |
各VPSプロバイダーの詳細比較は full VPS comparison もご参照ください。
-
SSHアクセス:VPSへのSSHアクセスが可能であること。
-
DockerとDocker Compose:VPSにDockerとDocker Composeがインストールされていること。以下のコマンドでインストールできます。
sudo apt update sudo apt install -y docker.io docker-compose
Step 1:HedgeDoc環境のセットアップ
-
HedgeDoc用のディレクトリを作成します。
mkdir ~/hedgedoc cd ~/hedgedoc -
docker-compose.ymlファイルを作成し、以下の設定を追加してPostgreSQLをデータベースとして設定します。version: '3.1' services: hedgedoc: image: hedgedoc/hedgedoc:latest environment: - CMD_URI=https://your-domain.com - DB_TYPE=postgres - DB_HOST=db - DB_PORT=5432 - DB_USER=hedgedoc - DB_PASS=hedgedoc_password - DB_NAME=hedgedoc ports: - '3000:3000' depends_on: - db db: image: postgres:latest environment: - POSTGRES_USER=hedgedoc - POSTGRES_PASSWORD=hedgedoc_password - POSTGRES_DB=hedgedoc volumes: - db_data:/var/lib/postgresql/data volumes: db_data: -
your-domain.comを実際に使用するドメイン名に置き換えます。
Step 2:HedgeDocの起動
-
Docker Composeを使ってHedgeDocを起動します。
docker-compose up -d -
ログを確認して正しく動作しているか確認します。
docker-compose logs -f -
デフォルトでは、
http://your-server-ip:3000でアクセス可能です。運用環境ではリバースプロキシを設定しましょう。
Step 3:Nginxによるリバースプロキシ設定
-
Nginxをインストールします。
sudo apt install -y nginx -
HedgeDoc用の設定ファイルを作成します。
sudo nano /etc/nginx/sites-available/hedgedoc -
以下の内容を記述します。
server { listen 80; server_name your-domain.com; location / { proxy_pass http://localhost:3000; 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; } } -
設定を有効化してNginxを再起動します。
sudo ln -s /etc/nginx/sites-available/hedgedoc /etc/nginx/sites-enabled/ sudo nginx -t sudo systemctl restart nginx
Step 4:SSLでHedgeDocをセキュア化
-
Let’s Encryptを使ってSSL証明書を取得します。Certbotをインストールします。
sudo apt install -y certbot python3-certbot-nginx -
Certbotで証明書を取得します。
sudo certbot --nginx -d your-domain.com
よくある質問
1. HedgeDocのセルフホスティングのメリットは何ですか?
セルフホスティングは、データの管理とプライバシーの面で比類ないコントロールを提供します。クラウドサービスとは異なり、自分でセキュリティアップデートやカスタマイズを行えるため、特定のデータ処理要件やシステム連携に適しています。特に開発者やホムラボの方々にとっては、重要な選択肢となるでしょう。
2. 低スペックのVPSでもHedgeDocは動かせますか?
はい、基本的な操作であれば2 GBのRAMと最低限のディスク容量があれば動作します。ただし、多人数でのコラボレーションや大規模なインスタンス運用を考える場合は、少なくとも4 GBのRAMと50 GBのディスク容量を持つVPSを推奨します。ContaboやHetznerの価格体系なら手頃に必要スペックを満たせます。
3. HedgeDocのアップデート方法は?
Dockerを使っているため、最新のイメージをプルして再起動するだけで簡単に更新できます。
docker-compose pull
docker-compose up -d
これらのコマンドを実行した後は、リリースノートを確認して、必要なマイグレーションやアップデート手順を追ってください。詳しいバージョンアップ情報は HedgeDocのドキュメント を参照してください。
結論
VPS上にHedgeDocをセルフホストすることで、パワフルなMarkdownエディタの利便性を享受しながら、環境の完全なコントロールが可能になります。上記の設定手順を参考に、HedgeDocをインストール、構成、セキュア化しましょう。プライバシーやデータの整合性を損なうことなく、リアルタイムコラボレーションの恩恵を受けてください。 --- END ---