Cal.com开源预约管理平台搭建教程 Calendly替代品自建部署 帕斯内网穿透实现公网访问
作者
小编
发布时间

项目介绍
Cal.com 是一个开源的日程安排和预约管理平台,被誉为 Calendly 的开源替代品。它基于 Next.js 14、tRPC、React.js、Tailwind CSS 和 Prisma.io 构建,为用户提供完全自主控制的预约调度解决方案。
Cal.com 让你完全掌控自己的数据、工作流程和界面外观。与其他调度工具不同,Cal.com 支持自托管部署,可以部署在你自己的域名下,提供白标签设计,并且拥有强大的 API 驱动架构。无论是商务会议、研讨会、瑜伽课程,还是家庭通话,Cal.com 都能满足你的预约调度需求。
项目支持多种集成服务,包括 Google Calendar、Outlook、Zoom、Daily.co 等,让你的预约管理更加便捷高效。界面简洁美观,功能强大,是个人和企业管理预约的理想选择。
项目地址: 点我跳转
部署安装
如需在外也打开项目需要配置内网穿透使用,点击前往 帕斯内网穿透,先注册好账号备用。
复制下列的配置文件
1# Use postgres/example user/password credentials23volumes:4 database-data:56networks:7 stack:8 name: stack9 external: false1011services:12 database:13 container_name: database14 image: postgres15 restart: always16 volumes:17 - database-data:/var/lib/postgresql/data/18 env_file: .env19 networks:20 - stack2122 calcom:23 image: calcom.docker.scarf.sh/calcom/cal.com24 restart: always25 networks:26 - stack27 ports:28 - 3000:300029 env_file: .env30 environment:31 - DATABASE_URL=postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${DATABASE_HOST}/${POSTGRES_DB}32 - DATABASE_DIRECT_URL=${DATABASE_URL}33 depends_on:34 - database3536 studio:37 image: calcom.docker.scarf.sh/calcom/cal.com38 restart: always39 networks:40 - stack41 ports:42 - 5555:555543 env_file: .env44 environment:45 - DATABASE_URL=postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${DATABASE_HOST}/${POSTGRES_DB}46 - DATABASE_DIRECT_URL=${DATABASE_URL}47 depends_on:48 - database49 command:50 - npx51 - prisma52 - studio
同时创建 .env 文件,内容如下:
1NEXT_PUBLIC_LICENSE_CONSENT=agree2NEXT_PUBLIC_WEBAPP_URL=http://localhost:30003NEXTAUTH_SECRET=your-secret-key-here4CALENDSO_ENCRYPTION_KEY=your-encryption-key-here5POSTGRES_USER=unicorn_user6POSTGRES_PASSWORD=magical_password7POSTGRES_DB=calendso8DATABASE_HOST=database:54329DATABASE_URL=postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${DATABASE_HOST}/${POSTGRES_DB}10DATABASE_DIRECT_URL=${DATABASE_URL}11CALCOM_TELEMETRY_DISABLED=112EMAIL_FROM_NAME=Cal.com13EMAIL_FROM=notifications@example.com14NODE_ENV=production
打开飞牛 NAS 或其他的 NAS 设备

项目名称可以随便填,点击创建 docker-compose.yml

点击 Compose -> 新建项目
这里需要修改 NEXTAUTH_SECRET 和 CALENDSO_ENCRYPTION_KEY 为你自己的密钥,可以使用随机字符串生成器生成32位字符串。POSTGRES_PASSWORD 也建议修改为更安全的密码。
如果提示端口被占用可以修改下面的字段,但是需要保持格式正确。
创建成功后可以访问 ip:3000 到这里就可以正常显示项目了,首次访问会进入设置向导,按照提示创建第一个用户即可。
穿透公网
打开帕斯内网穿透控制台,点击隧道管理-隧道列表

点击创建新隧道
隧道节点可以随便选,一般选个负载低的就可以

接下来填写信息,隧道名称可以随便填写
本地 IP 默认就可以
传输协议可以选择 TCP 也可以选择 HTTP/HTTPS
HTTP 就是域名的形式,教程以使用 TCP 为演示
本项目中如果没有修改端口的话默认是 3000 端口,这里本地 IP 就填 3000
远程端口可以留空也可以自定义。下图仅做参考,请按照实际项目端口添加。

填写完毕点击确定
点击刚才创建好的隧道,点击获取配置文件

回到飞牛 NAS,点击应用中心下载 frpc 客户端

打开后粘贴刚才复制的配置文件,点击确定即可
复制帕斯内网穿透控制台的访问 IP 和端口
可以看到已经正常穿透成功了
本篇教程结束