Home Catalogus Chatwoot
Communication

Chatwoot

Customer engagement suite, omnichannel support and live chat platform.

ARM64 & AMD64
Docker & Rootless Podman
100% Self-Hosted (Geen Lock-in)
RAM Profiel: Laag
Standaard Poort: Port 3044

Waarom deze configuratie?

Snelle Start (Standalone Docker Compose)

Onderstaand compose-fragment is direct te gebruiken in elke Docker- of Podman-omgeving:

services:
  chatwoot-web:
    image: chatwoot/chatwoot:v4.17.1
    container_name: njorddeploy-chatwoot-web
    restart: always
    depends_on:
      chatwoot-postgres:
        condition: service_healthy
      chatwoot-redis:
        condition: service_healthy
    ports:
      - "3044:3000"
    environment:
      - "NODE_ENV=production"
      - "RAILS_ENV=production"
      - "INSTALLATION_ENV=docker"
      - "FRONTEND_URL=https://chat.njorddeploy.com"
      - "SECRET_KEY_BASE=generate_secret_token_placeholder"
      - "POSTGRES_HOST=chatwoot-postgres"
      - "POSTGRES_PORT=5432"
      - "POSTGRES_DATABASE=chatwoot_production"
      - "POSTGRES_USERNAME=chatwoot"
      - "POSTGRES_PASSWORD=chatwoot_secure_pw_2026"
      - "REDIS_URL=redis://:chatwoot_redis_pw_2026@chatwoot-redis:6379"
      - "ACTIVE_STORAGE_SERVICE=local"
      - "SMTP_ADDRESS=smtp.soverin.net"
      - "SMTP_PORT=587"
      - "SMTP_USERNAME=info@njorddeploy.com"
      - "SMTP_PASSWORD=ChangeMeSecurePassword123!"
      - "SMTP_DOMAIN=njorddeploy.com"
      - "SMTP_ENABLE_STARTTLS_AUTO=true"
      - "SMTP_AUTHENTICATION=plain"
      - "MAILER_SENDER_EMAIL=info@njorddeploy.com"
      - "SMTP_OPENSSL_VERIFY_MODE=peer"
      - "ENABLE_ACCOUNT_SIGNUP=false"
      - "ENABLE_RACK_ATTACK_WIDGET_API=true"
    volumes:
      - "/opt/njorddeploy/data/chatwoot/storage:/app/storage"
    entrypoint: docker/entrypoints/rails.sh
    command: ["bundle", "exec", "rails", "s", "-p", "3000", "-b", "0.0.0.0"]
    networks:
      - njorddeploy_net

  chatwoot-worker:
    image: chatwoot/chatwoot:v4.17.1
    container_name: njorddeploy-chatwoot-worker
    restart: always
    depends_on:
      chatwoot-postgres:
        condition: service_healthy
      chatwoot-redis:
        condition: service_healthy
    environment:
      - "NODE_ENV=production"
      - "RAILS_ENV=production"
      - "INSTALLATION_ENV=docker"
      - "FRONTEND_URL=https://chat.njorddeploy.com"
      - "SECRET_KEY_BASE=generate_secret_token_placeholder"
      - "POSTGRES_HOST=chatwoot-postgres"
      - "POSTGRES_PORT=5432"
      - "POSTGRES_DATABASE=chatwoot_production"
      - "POSTGRES_USERNAME=chatwoot"
      - "POSTGRES_PASSWORD=chatwoot_secure_pw_2026"
      - "REDIS_URL=redis://:chatwoot_redis_pw_2026@chatwoot-redis:6379"
      - "ACTIVE_STORAGE_SERVICE=local"
      - "SMTP_ADDRESS=smtp.soverin.net"
      - "SMTP_PORT=587"
      - "SMTP_USERNAME=info@njorddeploy.com"
      - "SMTP_PASSWORD=ChangeMeSecurePassword123!"
      - "SMTP_DOMAIN=njorddeploy.com"
      - "SMTP_ENABLE_STARTTLS_AUTO=true"
      - "SMTP_AUTHENTICATION=plain"
      - "MAILER_SENDER_EMAIL=info@njorddeploy.com"
      - "SMTP_OPENSSL_VERIFY_MODE=peer"
      - "ENABLE_ACCOUNT_SIGNUP=false"
      - "ENABLE_RACK_ATTACK_WIDGET_API=true"
    volumes:
      - "/opt/njorddeploy/data/chatwoot/storage:/app/storage"
    entrypoint: docker/entrypoints/rails.sh
    command: ["bundle", "exec", "sidekiq", "-C", "config/sidekiq.yml"]
    networks:
      - njorddeploy_net

  chatwoot-postgres:
    image: pgvector/pgvector:pg16
    container_name: njorddeploy-chatwoot-postgres
    restart: always
    environment:
      - "POSTGRES_DB=chatwoot_production"
      - "POSTGRES_USER=chatwoot"
      - "POSTGRES_PASSWORD=chatwoot_secure_pw_2026"
    volumes:
      - "/opt/njorddeploy/data/chatwoot/postgres:/var/lib/postgresql/data"
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U chatwoot -d chatwoot_production"]
      interval: 5s
      timeout: 5s
      retries: 5
    networks:
      - njorddeploy_net

  chatwoot-redis:
    image: redis:7-alpine
    container_name: njorddeploy-chatwoot-redis
    restart: always
    command: ["redis-server", "--requirepass", "chatwoot_redis_pw_2026"]
    volumes:
      - "/opt/njorddeploy/data/chatwoot/redis:/data"
    healthcheck:
      test: ["CMD", "redis-cli", "-a", "chatwoot_redis_pw_2026", "ping"]
      interval: 5s
      timeout: 5s
      retries: 5
    networks:
      - njorddeploy_net

networks:
  njorddeploy_net:

Start de service direct via de commandline: docker compose up -d

Configuratie & Omgevingsvariabelen

Belangrijkste configuratieparameters en standaardwaarden uit de NjordDeploy component-sjabloon:

Variable Default Value Description
CHATWOOT_WEB_PORT 3044 The external TCP port on the host for Chatwoot web interface.
FRONTEND_URL https://chat.njorddeploy.com Public URL where Chatwoot will be reachable.
SECRET_KEY_BASE generate_secret_token_placeholder Secret key used for Rails session encryption.
POSTGRES_PASSWORD chatwoot_secure_pw_2026 Password for the dedicated Chatwoot PostgreSQL database.
REDIS_PASSWORD chatwoot_redis_pw_2026 Password for the dedicated Chatwoot Redis cache and worker queue.

Ecosysteem & Bedrijfsintegratie

Eenvoudig beheren via NjordDeploy

Installeer, bewaak en update deze service met 1 klik op uw eigen Raspberry Pi of Proxmox server via de NjordDeploy Configurator.