LASSIC Media らしくメディア
Cal.com予約・日程調整のセルフホストと外注比較
LASSIC IT事業部|元請(プライムベンダー)としてシステム保守・運用を受託
この記事のポイント
- Cal.comのオープンソース版は現在「Cal.diy」という名称・MITライセンスで提供されており、GitHubのcalcom/cal.comへのアクセスはcalcom/cal.diyへ転送される体制に変わっています。
- 公式ドキュメントは、個人利用・非本番環境での使用を明確に推奨し、商用の本番運用は自己責任と位置付けています。
- 法人の予約・日程調整基盤として本番運用するなら、内製セルフホストのリスクと、有償の商用版・外注委託を比較したうえで判断する必要があります。
目次
Cal.comとは?予約・日程調整を自動化するスケジューリングツール
Cal.comは、公式サイトで「個人・電話対応を行う企業・スケジューリング基盤を構築する開発者向けの、フルカスタマイズ可能なスケジューリングソフトウェア」と説明されているツールです*1。空き時間の提示から日時確定、カレンダー連携、リマインド通知までを自動化し、Calendly等の予約調整SaaSの代替候補として名前が挙がることが多いプロダクトです。
提供形態は大きく2つに分かれます。1つはCal.com社が運営するクラウド版(Free・Teams・Organizations・Enterpriseの4プラン)で、サブスクリプション課金のSaaSとして利用します*6。もう1つがGitHubで公開されているオープンソース版で、自社サーバーに構築するセルフホスト運用です。ただし、このオープンソース版の位置づけは近年変わっており、正しく把握しないまま情報収集を進めると誤った前提で構築計画を立てるおそれがあります。
セルフホスト版はいま「Cal.diy」という名称・MITライセンスで提供
GitHubのcalcom/cal.comはcalcom/cal.diyへ転送される
現在、GitHubで「calcom/cal.com」のリポジトリURLへアクセスすると、「calcom/cal.diy」へ転送(301リダイレクト)される体制になっています*5。同リポジトリのLICENSEファイルを確認すると「MIT License / Copyright (c) 2020-present Cal.com, Inc.」と明記されており、MITライセンスで提供されています*4。以前の情報でAGPL系のライセンスとして紹介されているケースを見かけることがありますが、現時点の一次情報を確認する限りMITライセンスに整理されている点は、構築前に押さえておくべき重要なポイントです。
Cal.comからスピンアウトしたコミュニティ主導プロジェクト
Cal.diyは「Cal.comからスピンアウトしたコミュニティ主導のオープンソース版」と位置づけられ、GitHub上のスター数は46,000件を超えています*5。公式サイトは、Teams・Organizations・Insights・Workflows・SSO/SAMLといったEnterprise専用機能(ee部分に相当する機能群)は含まれておらず、「Cal.com、Inc.のアカウントやライセンスも不要」なプロジェクトだと明記しています*1。無料の範囲でどこまでの機能を使えるのかは、後述の商用プランとの比較の起点になります。
公式が明記する「個人・非本番向け」という重要な注意点
Cal.diyの公式ドキュメントは、利用条件についてかなり踏み込んだ注意書きを掲載しています。「Cal.diyは自身のCal.diyインスタンスをセルフホストしたいユーザー向けであり、個人利用・非本番用途に厳密に推奨される」と明記されており*1、あわせて「自己責任で利用すること」「Cal.com、Inc.はオープンソースプロジェクトのセキュリティ面の堅牢性を保証しない」という文言も掲載されています*1。
さらに、「セルフホストにはサーバー管理・データベース管理・機密データの保護に関する高度な知識が必要」だとも述べられており*1、「商用利用・エンタープライズ向けの本番運用が必要な場合はCal.comの利用を推奨する」という案内も添えられています*1。つまり、法人が予約・日程調整の基盤として本番運用する目的でCal.diyを選ぶ場合、開発元が想定する利用シーンの外側に踏み出すことになる点を理解したうえで判断する必要があります。
Docker Composeで構築する3つのパターン
Cal.diyのリポジトリにはdocker-compose.ymlが同梱されており、用途に応じて3つの起動パターンを選べます*3。1つ目は「docker compose up -d」によるフルスタック構成で、PostgreSQL・Webアプリ・Prisma Studioをまとめて起動します。2つ目は「docker compose up -d calcom studio」で、既存の外部データベースを使う場合のパターンです。3つ目は「docker compose up -d calcom」で、Webアプリのみを起動し外部データベースへの接続を前提とします*3。
既定のポートは3000番で、起動後は「http://localhost:3000」またはNEXT_PUBLIC_WEBAPP_URLで指定したURLでアクセスします*3。ビルド時に設定する環境変数はNEXT_PUBLIC_TELEMETRY_KEY・NEXT_PUBLIC_LICENSE_CONSENT・NEXT_PUBLIC_WEBAPP_URLの3つ、実行時に必要な環境変数はNEXTAUTH_SECRET・DATABASE_URL(外部データベース利用時)・NEXTAUTH_URLで、SSLロードバランサー配下ではNODE_TLS_REJECT_UNAUTHORIZED=0の設定も案内されています*3。イメージはDockerHubの「calcom/cal.diy」で配布されており、ARM環境では末尾に「-arm」を付けたタグを使います*3。
手動インストールの手順とNode.js等の要件
Dockerを使わない手動インストールの場合、公式ドキュメントは次の手順を案内しています*2。まず「git clone https://github.com/calcom/cal.diy.git」でリポジトリを取得します(Windows環境で管理者権限を使う場合は「git clone -c core.symlinks=true」を付与)。次にディレクトリへ移動して「yarn」で依存パッケージを導入し、「.env.example」を「.env」および「.env.appStore」としてコピーします*2。
続いて「openssl rand -base64 32」で生成した値をNEXTAUTH_SECRETに設定し、本番向けには「yarn build」でビルドしたのち「yarn start」で起動します*2。公式ドキュメントは「本番用にビルドする前に、データベースのアップグレードを済ませておくこと」と警告しており*2、この手順を飛ばすとビルド後にマイグレーション不整合が起きる可能性があります。動作要件としては、Node.jsはバージョン18が強く推奨され、yarn・Git・PostgreSQLに加えてPrismaが依存パッケージとして含まれます*2。対応OSはWindows・Mac・Linux・BSDですが、本番運用にはLinuxが推奨されています*1。
内製セルフホストと外注委託のコスト構造比較
Cal.diyを自社で構築・運用する内製セルフホストと、外部パートナーへ委託する場合とでは、費用構造・必要スキル・責任範囲の重心が異なります。以下の表に主な違いを整理しました。
| 比較項目 | セルフホスト内製(Cal.diy) | 外注委託 |
|---|---|---|
| ライセンス費用 | MITライセンスの無料ソフトウェアのため発生しません*4 | ソフトウェア自体は無料ですが、構築・保守を委託する分の費用が発生します |
| 本番運用の位置づけ | 公式が個人・非本番用途を推奨しており、本番運用は自己責任です*1 | 運用体制の設計・監視まで含めて責任分担を契約で明確化できます |
| 必要な専門知識 | Docker運用・Linux管理・DBアップグレード手順の把握が必要です*2 | 専門パートナーが構築・調整を担うため、社内での知識習得は最小限で済みます |
| アップグレード対応 | 本番ビルド前のデータベースアップグレードを自社で判断・実行します*2 | 動作検証を含めて委託先が対応します |
商用の本番運用ならCal.com Enterpriseという選択肢
法人として本番の予約基盤を求めるなら、Cal.com社が提供する商用プランも比較対象になります。公式の料金ページによると、Freeプランは1ユーザーまで無料、Teamsプランは1ユーザーあたり月額12ドル、Organizationsプランは1ユーザーあたり月額28ドル(いずれも年払いで25%割引)、Enterpriseプランは個別見積もりです*6。
Enterpriseプランには、SAML SSO・SCIMプロビジョニング、SOC 2 Type II・HIPAA・ISO 27001・GDPR・CCPAの準拠、99.9%(オプションで99.99%)のSLA、専任のオンボーディングとエンジニアリングサポートなどが含まれます*7。公式サイトはEnterprise顧客向けに、ホスティング型に加えてオンプレミス(社内設置)でのエンタープライズアクセスについても案内しており*1、無償のCal.diyを自己責任でセルフホストする以外に、商用の本番運用ルートも選択肢として存在することが分かります。
内製構築に必要なスキルと外注との違い
Docker運用・DB管理・セキュリティ確保に求められる専門知識
Cal.diyを内製で構築・運用する場合に求められる専門知識は、複数分野にまたがります。Dockerコンテナの運用とLinuxサーバー管理、NEXTAUTH_SECRETをはじめとする認証まわりの設定、データベースのアップグレード手順の把握、そして公式が繰り返し注意喚起している「機密データの保護」に関するセキュリティ対応がその内容です。自社の情報システム部門だけでこれらを完結させ、なおかつ本番運用の責任も自社で負うには、相応の体制整備が欠かせません。
公式ドキュメントが「オープンソースプロジェクトのセキュリティ面の堅牢性を保証しない」と明言している以上*1、判断を先延ばしにしたまま自己流で本番構築を進めると、想定外の障害やセキュリティインシデントが起きた際に対応が後手に回るリスクがあります。特に採用面接や営業商談の日程調整のように、対外的な信頼に関わる用途で使う場合は、この点を軽視できません。
専門パートナーに委託した場合の違い
専門パートナーに依頼すると、Docker環境の構築からデータベースのアップグレード検証、セキュリティ設定の確認、あるいは商用のCal.com Enterpriseとの比較検討まで一連の工程を任せられます。自社では構成検討や動作検証だけで時間がかかる場面でも、複数の業務システムを扱ってきた知見を活用すれば、稼働までの期間を圧縮しやすくなります。内製と外注のどちらを選ぶ場合でも、まずは自社が求める可用性・セキュリティ水準の整理が出発点と言えるでしょう。
まとめ:Cal.comセルフホスト活用の3つの判断軸
本稿ではCal.comの提供形態とセルフホスト構築の要点を、公式ドキュメントとGitHubリポジトリの情報に基づいて整理しました。要点は次の3つに集約されるでしょう。第一に、オープンソース版は現在「Cal.diy」という名称・MITライセンスに整理されており、以前の情報を鵜呑みにせず最新の一次情報を確認する必要があります*4。第二に、公式は個人利用・非本番用途を明確に推奨しており、法人の本番運用に使う場合はセキュリティ・可用性を自己責任で確保する体制が求められます*1。第三に、商用の本番運用にはCal.com Enterprise(オンプレミス案内を含む)という有償の選択肢もあり、構築・運用の判断と実行は外部委託によってリスクを抑えやすくなります*7。
よくある質問
Cal.comのオープンソース版は無料で商用利用できますか。
オープンソース版は現在「Cal.diy」という名称でMITライセンスにより提供されており、ソースコードの利用・改変は無料です*4。ただし公式は個人利用・非本番用途を推奨しており、商用の本番運用で使う場合は自己責任である点に注意が必要です*1。
セルフホスト版(Cal.diy)を法人の本番予約システムとして使えますか。
技術的には稼働させられますが、公式ドキュメントは「個人利用・非本番用途に厳密に推奨される」「セキュリティ面の堅牢性を保証しない」と明記しています*1。法人の本番運用で使う場合は、自社での責任分担やセキュリティ対策を前提に判断する必要があります。
Dockerでの構築にはどのくらいの知識が必要ですか。
docker-compose.ymlを使った起動自体は3パターンから選べますが*3、NEXTAUTH_SECRETの生成やデータベース接続設定、本番ビルド前のデータベースアップグレードなど*2、Docker運用とデータベース管理の両方の知識が求められます。
Calendly代替として使う場合の注意点は何ですか。
日程調整の自動化という機能面ではCalendlyの代替候補になり得ますが、セルフホスト版は公式が本番用途を非推奨としている点が異なります*1。採用面接や営業商談など対外的な信頼が関わる用途では、可用性とセキュリティの担保方法を事前に検討することが大切です。
商用の本番利用にはどのような選択肢がありますか。
Cal.com社が提供するTeams(1ユーザー月額12ドル)・Organizations(同28ドル)・Enterprise(個別見積もり)といった商用プランがあり、EnterpriseプランはSAML SSOやSOC 2 Type II等の準拠、オンプレミスでのエンタープライズアクセスにも対応しています*6*7。無償のセルフホストを自己責任で運用する以外に、こうした有償ルートも比較対象になります。
著者:テレリモ総研編集部 鈴木 亮佑
ご不明な点はお問い合わせフォームからもご連絡いただけます。
- *1 出典:Cal.diy公式サイト(トップページ)(https://cal.diy/)
- *2 出典:Cal.diy公式ドキュメント「Installation」(https://cal.diy/installation)
- *3 出典:Cal.diy公式ドキュメント「Docker」(https://cal.diy/docker)
- *4 出典:GitHub calcom/cal.diy「LICENSE」(https://github.com/calcom/cal.diy/blob/main/LICENSE)
- *5 出典:GitHub calcom/cal.diy(リポジトリ)(https://github.com/calcom/cal.diy)
- *6 出典:Cal.com公式サイト「Pricing」(https://cal.com/pricing)
- *7 出典:Cal.com公式サイト「Enterprise」(https://cal.com/enterprise)