Dokploy

HeyForm

Allows anyone to create engaging conversational forms for surveys, questionnaires, quizzes, and polls. No coding skills required.

HeyForm logo

Configuration

services:
  heyform:
    image: heyform/community-edition:v0.1.0
    restart: always
    volumes:
      # Persist uploaded images
      - heyform-data:/app/static/upload
    depends_on:
      - mongo
      - keydb
    ports:
      - 8000
    env_file:
      - .env
    environment:
      MONGO_URI: 'mongodb://mongo:27017/heyform'
      REDIS_HOST: keydb
      REDIS_PORT: 6379
      SMTP_FROM: ${SMTP_FROM}
      SMTP_HOST: ${SMTP_HOST}
      SMTP_PORT: ${SMTP_PORT}
      SMTP_USER: ${SMTP_USER}
      SMTP_SECURE: ${SMTP_SECURE}
      SMTP_IGNORE_CERT: ${SMTP_IGNORE_CERT}
      SMTP_PASSWORD: ${SMTP_PASSWORD}

  mongo:
    image: percona/percona-server-mongodb:4.4
    restart: always
    volumes:
      # Persist MongoDB data
      - mongo-data:/data/db

  keydb:
    image: eqalpha/keydb:alpine
    restart: always
    command: keydb-server --appendonly yes --protected-mode no
    volumes:
      # Persist KeyDB data
      - keydb-data:/data

volumes:
  heyform-data:
  mongo-data:
  keydb-data:
[variables]
main_domain = "${domain}"
session_key = "${base64:64}"
form_encryption_key = "${base64:64}"

[config]
env = [
  "APP_HOMEPAGE_URL=http://${main_domain}",
  "SESSION_KEY=${session_key}",
  "FORM_ENCRYPTION_KEY=${form_encryption_key}",
  "SMTP_FROM=HeyForm <noreply@${main_domain}>",
  "SMTP_HOST=",
  "SMTP_PORT=587",
  "SMTP_USER=",
  "SMTP_SECURE=false",
  "SMTP_IGNORE_CERT=false",
  "SMTP_PASSWORD=",
]
mounts = []

[[config.domains]]
serviceName = "heyform"
port = 8_000
host = "${main_domain}"

Base64

To import this template in Dokploy: create a Compose service → AdvancedBase64 import and paste the content below:

ewogICJjb21wb3NlIjogInNlcnZpY2VzOlxuICBoZXlmb3JtOlxuICAgIGltYWdlOiBoZXlmb3JtL2NvbW11bml0eS1lZGl0aW9uOnYwLjEuMFxuICAgIHJlc3RhcnQ6IGFsd2F5c1xuICAgIHZvbHVtZXM6XG4gICAgICAjIFBlcnNpc3QgdXBsb2FkZWQgaW1hZ2VzXG4gICAgICAtIGhleWZvcm0tZGF0YTovYXBwL3N0YXRpYy91cGxvYWRcbiAgICBkZXBlbmRzX29uOlxuICAgICAgLSBtb25nb1xuICAgICAgLSBrZXlkYlxuICAgIHBvcnRzOlxuICAgICAgLSA4MDAwXG4gICAgZW52X2ZpbGU6XG4gICAgICAtIC5lbnZcbiAgICBlbnZpcm9ubWVudDpcbiAgICAgIE1PTkdPX1VSSTogJ21vbmdvZGI6Ly9tb25nbzoyNzAxNy9oZXlmb3JtJ1xuICAgICAgUkVESVNfSE9TVDoga2V5ZGJcbiAgICAgIFJFRElTX1BPUlQ6IDYzNzlcbiAgICAgIFNNVFBfRlJPTTogJHtTTVRQX0ZST019XG4gICAgICBTTVRQX0hPU1Q6ICR7U01UUF9IT1NUfVxuICAgICAgU01UUF9QT1JUOiAke1NNVFBfUE9SVH1cbiAgICAgIFNNVFBfVVNFUjogJHtTTVRQX1VTRVJ9XG4gICAgICBTTVRQX1NFQ1VSRTogJHtTTVRQX1NFQ1VSRX1cbiAgICAgIFNNVFBfSUdOT1JFX0NFUlQ6ICR7U01UUF9JR05PUkVfQ0VSVH1cbiAgICAgIFNNVFBfUEFTU1dPUkQ6ICR7U01UUF9QQVNTV09SRH1cblxuICBtb25nbzpcbiAgICBpbWFnZTogcGVyY29uYS9wZXJjb25hLXNlcnZlci1tb25nb2RiOjQuNFxuICAgIHJlc3RhcnQ6IGFsd2F5c1xuICAgIHZvbHVtZXM6XG4gICAgICAjIFBlcnNpc3QgTW9uZ29EQiBkYXRhXG4gICAgICAtIG1vbmdvLWRhdGE6L2RhdGEvZGJcblxuICBrZXlkYjpcbiAgICBpbWFnZTogZXFhbHBoYS9rZXlkYjphbHBpbmVcbiAgICByZXN0YXJ0OiBhbHdheXNcbiAgICBjb21tYW5kOiBrZXlkYi1zZXJ2ZXIgLS1hcHBlbmRvbmx5IHllcyAtLXByb3RlY3RlZC1tb2RlIG5vXG4gICAgdm9sdW1lczpcbiAgICAgICMgUGVyc2lzdCBLZXlEQiBkYXRhXG4gICAgICAtIGtleWRiLWRhdGE6L2RhdGFcblxudm9sdW1lczpcbiAgaGV5Zm9ybS1kYXRhOlxuICBtb25nby1kYXRhOlxuICBrZXlkYi1kYXRhOlxuIiwKICAiY29uZmlnIjogIlt2YXJpYWJsZXNdXG5tYWluX2RvbWFpbiA9IFwiJHtkb21haW59XCJcbnNlc3Npb25fa2V5ID0gXCIke2Jhc2U2NDo2NH1cIlxuZm9ybV9lbmNyeXB0aW9uX2tleSA9IFwiJHtiYXNlNjQ6NjR9XCJcblxuW2NvbmZpZ11cbmVudiA9IFtcbiAgXCJBUFBfSE9NRVBBR0VfVVJMPWh0dHA6Ly8ke21haW5fZG9tYWlufVwiLFxuICBcIlNFU1NJT05fS0VZPSR7c2Vzc2lvbl9rZXl9XCIsXG4gIFwiRk9STV9FTkNSWVBUSU9OX0tFWT0ke2Zvcm1fZW5jcnlwdGlvbl9rZXl9XCIsXG4gIFwiU01UUF9GUk9NPUhleUZvcm0gPG5vcmVwbHlAJHttYWluX2RvbWFpbn0+XCIsXG4gIFwiU01UUF9IT1NUPVwiLFxuICBcIlNNVFBfUE9SVD01ODdcIixcbiAgXCJTTVRQX1VTRVI9XCIsXG4gIFwiU01UUF9TRUNVUkU9ZmFsc2VcIixcbiAgXCJTTVRQX0lHTk9SRV9DRVJUPWZhbHNlXCIsXG4gIFwiU01UUF9QQVNTV09SRD1cIixcbl1cbm1vdW50cyA9IFtdXG5cbltbY29uZmlnLmRvbWFpbnNdXVxuc2VydmljZU5hbWUgPSBcImhleWZvcm1cIlxucG9ydCA9IDhfMDAwXG5ob3N0ID0gXCIke21haW5fZG9tYWlufVwiXG4iCn0=

Tags

form, builder, questionnaire, quiz, survey


Version: v0.1.0

On this page