搬瓦工部署 Formbricks 表单问卷工具教程

Formbricks 是一款开源的体验管理平台,专注于产品内调查和用户反馈收集。它是 Typeform、SurveyMonkey 等商业调查工具的自托管替代品,支持在应用内弹出问卷(In-app Surveys)和通过链接分享的独立问卷(Link Surveys)。Formbricks 的核心优势在于可以根据用户行为和属性精准触发问卷,在正确的时间向正确的用户提出正确的问题。本文将介绍如何在搬瓦工 VPS 上部署 Formbricks。部署前请确保已安装 Docker 和 Docker Compose

一、Formbricks 核心功能

  • 应用内调查:在产品中以弹窗或侧边栏形式展示问卷。
  • 链接调查:生成独立的问卷链接,通过邮件或社交媒体分享。
  • 用户分群:根据用户属性和行为定义目标用户群体。
  • 触发条件:基于页面访问、按钮点击、代码事件等条件触发问卷。
  • 问题类型:单选、多选、评分、NPS、开放文本、日期选择等。
  • 逻辑分支:根据用户回答展示不同的后续问题。
  • 集成:支持 Webhook、Slack、Notion、Google Sheets 等集成。

二、系统要求

  • 操作系统:Ubuntu 20.04+ 或 Debian 11+。
  • 内存:至少 1GB,推荐 2GB。
  • 磁盘:至少 5GB 可用空间。
  • Docker:已安装 Docker 和 Docker Compose。

搬瓦工 VPS 方案推荐参考 全部方案,购买时使用优惠码 NODESEEK2026 可享 6.77% 折扣,购买入口:bwh81.net

三、创建项目目录

mkdir -p /opt/formbricks && cd /opt/formbricks

四、创建环境变量文件

cat > /opt/formbricks/.env <<'EOF'
DATABASE_URL=postgresql://formbricks:your_db_password@formbricks-db:5432/formbricks
NEXTAUTH_SECRET=your_nextauth_secret
NEXTAUTH_URL=https://your_domain.com
ENCRYPTION_KEY=your_encryption_key_here
WEBAPP_URL=https://your_domain.com
PRIVACY_URL=https://your_domain.com/privacy
TERMS_URL=https://your_domain.com/terms
SIGNUP_DISABLED=0
EMAIL_VERIFICATION_DISABLED=1
MAIL_FROM=noreply@your_domain.com
SMTP_HOST=smtp.example.com
SMTP_PORT=587
SMTP_USER=your_smtp_user
SMTP_PASSWORD=your_smtp_password
SMTP_SECURE_ENABLED=1
EOF

生成密钥:

# NEXTAUTH_SECRET
openssl rand -hex 32

# ENCRYPTION_KEY(必须是 32 字符的十六进制)
openssl rand -hex 16

五、编写 Docker Compose 配置

cat > /opt/formbricks/docker-compose.yml <<'EOF'
version: '3.8'

services:
  formbricks-db:
    image: postgres:15
    restart: always
    environment:
      POSTGRES_DB: formbricks
      POSTGRES_USER: formbricks
      POSTGRES_PASSWORD: your_db_password
    volumes:
      - formbricks_db_data:/var/lib/postgresql/data

  formbricks:
    image: formbricks/formbricks:latest
    restart: always
    ports:
      - "3000:3000"
    env_file: .env
    depends_on:
      - formbricks-db
    volumes:
      - formbricks_uploads:/home/nextjs/apps/web/uploads

volumes:
  formbricks_db_data:
  formbricks_uploads:
EOF

六、启动服务

cd /opt/formbricks
docker compose up -d

访问 http://your_server_ip:3000,注册管理员账户。首位注册用户自动成为管理员。

七、创建第一个调查

登录 Formbricks 后台,按照以下步骤创建调查:

  • 点击 Create Survey,选择调查类型(应用内或链接)。
  • 使用内置模板或从空白开始创建问卷。
  • 添加问题,配置逻辑分支。
  • 设置触发条件(仅应用内调查)。
  • 预览并发布调查。

八、接入前端 SDK

要在产品中展示应用内调查,需要接入 Formbricks JavaScript SDK:

// npm install @formbricks/js

import formbricks from "@formbricks/js";

formbricks.init({
  environmentId: "your_environment_id",
  apiHost: "https://your_domain.com",
});

// 标识用户(用于分群)
formbricks.setUserId("user_123");
formbricks.setAttribute("plan", "premium");
formbricks.setAttribute("country", "CN");

// 追踪自定义事件(用于触发问卷)
formbricks.track("purchase_completed");

九、配置反向代理

cat > /etc/nginx/sites-available/formbricks <<'EOF'
server {
    listen 80;
    server_name your_domain.com;

    client_max_body_size 20M;

    location / {
        proxy_pass http://127.0.0.1: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;
    }
}
EOF

ln -s /etc/nginx/sites-available/formbricks /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginx
certbot --nginx -d your_domain.com

十、集成第三方服务

在调查设置的 Integrations 页面,可以配置将问卷回复自动同步到:

  • Webhook:将每条回复发送到指定 URL。
  • Slack:实时收到新回复的通知。
  • Google Sheets:自动将回复写入电子表格。
  • Notion:将回复存储到 Notion 数据库。

十一、常见问题

调查未在应用中弹出

确认 SDK 的 environmentIdapiHost 配置正确。检查触发条件是否满足,用户是否属于目标分群。

注册页面报错

确保 NEXTAUTH_URLWEBAPP_URL 与实际访问域名一致,包括协议(http/https)。

总结

Formbricks 是一款功能丰富的开源调查工具,其应用内调查功能特别适合 SaaS 产品收集用户反馈。通过精准的触发条件和用户分群,你可以在最佳时机向用户展示问卷,提高回复率和数据质量。如果你还需要产品分析能力,可以将 Formbricks 与 PostHog 配合使用。选购搬瓦工 VPS 使用优惠码 NODESEEK2026 可享 6.77% 折扣。

关于本站

搬瓦工VPS中文网(bwgvps.com)是非官方中文信息站,整理搬瓦工的方案、优惠和教程。我们不销售主机,不提供技术服务。

新手必读
搬瓦工优惠码

NODESEEK2026(优惠 6.77%)

购买时填入即可抵扣。