diff --git a/blueprints/chatto/docker-compose.yml b/blueprints/chatto/docker-compose.yml new file mode 100644 index 00000000..3edb99d3 --- /dev/null +++ b/blueprints/chatto/docker-compose.yml @@ -0,0 +1,29 @@ +version: "3.8" + +services: + chatto: + image: ghcr.io/chattocorp/chatto:0.3.8 + restart: unless-stopped + expose: + - "4000" + environment: + CHATTO_WEBSERVER_URL: https://${CHATTO_HOST} + CHATTO_WEBSERVER_PORT: "4000" + CHATTO_WEBSERVER_COOKIE_SIGNING_SECRET: ${CHATTO_COOKIE_SECRET} + CHATTO_CORE_SECRET_KEY: ${CHATTO_CORE_SECRET} + CHATTO_CORE_ASSETS_SIGNING_SECRET: ${CHATTO_ASSETS_SECRET} + CHATTO_NATS_EMBEDDED_ENABLED: true + CHATTO_NATS_EMBEDDED_DATA_DIR: /data + CHATTO_OWNERS_EMAILS: ${CHATTO_OWNER_EMAIL} + CHATTO_SMTP_ENABLED: ${CHATTO_SMTP_ENABLED:-false} + CHATTO_SMTP_HOST: ${CHATTO_SMTP_HOST:-} + CHATTO_SMTP_PORT: ${CHATTO_SMTP_PORT:-587} + CHATTO_SMTP_TLS: ${CHATTO_SMTP_TLS:-mandatory} + CHATTO_SMTP_USERNAME: ${CHATTO_SMTP_USERNAME:-} + CHATTO_SMTP_PASSWORD: ${CHATTO_SMTP_PASSWORD:-} + CHATTO_SMTP_FROM: ${CHATTO_SMTP_FROM:-} + volumes: + - chatto-data:/data + +volumes: + chatto-data: diff --git a/blueprints/chatto/logo.png b/blueprints/chatto/logo.png new file mode 100644 index 00000000..81928507 Binary files /dev/null and b/blueprints/chatto/logo.png differ diff --git a/blueprints/chatto/template.toml b/blueprints/chatto/template.toml new file mode 100644 index 00000000..5d8570ef --- /dev/null +++ b/blueprints/chatto/template.toml @@ -0,0 +1,21 @@ +[variables] +main_domain = "${domain}" +cookie_secret = "${hash:64}" +core_secret = "${hash:64}" +assets_secret = "${hash:64}" +owner_email = "${email}" + +[config] +env = [ + "CHATTO_HOST=${main_domain}", + "CHATTO_COOKIE_SECRET=${cookie_secret}", + "CHATTO_CORE_SECRET=${core_secret}", + "CHATTO_ASSETS_SECRET=${assets_secret}", + "CHATTO_OWNER_EMAIL=${owner_email}", +] +mounts = [] + +[[config.domains]] +serviceName = "chatto" +port = 4000 +host = "${main_domain}" diff --git a/meta.json b/meta.json index 204d1c79..06aa27b0 100644 --- a/meta.json +++ b/meta.json @@ -1104,6 +1104,24 @@ "Notifications" ] }, + { + "id": "chatto", + "name": "Chatto (single binary)", + "version": "0.3.8", + "description": "A fully-featured real-time chat application for teams and communities. This template deploys the single Chatto binary with embedded NATS. Note: email/password registration requires SMTP to be configured after deployment; voice/video calls are not included in the single-binary setup.", + "logo": "logo.png", + "links": { + "github": "https://github.com/chattocorp/chatto", + "website": "https://chatto.run", + "docs": "https://docs.chatto.run" + }, + "tags": [ + "chat", + "communication", + "messaging", + "self-hosted" + ] + }, { "id": "chatwoot", "name": "Chatwoot",