Campfire - selbstgehostetes Team-Messaging von Basecamp

Campfire

Self-hosted Team-Messaging-Plattform von Basecamp als eigenständige Docker-Applikation.

Was ist Campfire?

Campfire ist Basecamps Open-Source-Variante ihrer gleichnamigen Chat-Lösung, die als eigenständige Rails-Applikation betrieben werden kann. Es bietet Echtzeit-Gruppen-Chats, Direktnachrichten, Dateianhänge und eine saubere, ablenkungsarme Oberfläche — ohne Slack-Komplexität. Campfire eignet sich für kleine Teams, die eine einfache, selbst gehostete Kommunikationslösung suchen und keine Cloud-Abhängigkeit wollen. Die Anwendung basiert auf Ruby on Rails und Action Cable für WebSockets.

Voraussetzungen

  • Docker 20.10+ / Docker Compose
  • PostgreSQL-Datenbank (separat oder als Service)
  • Mindestens 512 MB RAM
  • SMTP-Server für E-Mail-Benachrichtigungen

Compose-Beispiel

services:
  campfire:
    image: basecamp/campfire:latest
    container_name: campfire
    restart: unless-stopped
    ports:
      - "3000:3000"
    volumes:
      - ./storage:/app/storage
    environment:
      - DATABASE_URL=postgresql://campfire:secret@db/campfire
      - SECRET_KEY_BASE=changeme_use_rails_secret
      - SMTP_HOST=smtp.example.com
      - SMTP_PORT=587
    depends_on:
      - db

  db:
    image: postgres:16
    container_name: campfire-db
    restart: unless-stopped
    volumes:
      - db_data:/var/lib/postgresql/data
    environment:
      - POSTGRES_USER=campfire
      - POSTGRES_PASSWORD=secret
      - POSTGRES_DB=campfire

volumes:
  db_data:

Hinweise

  • SECRET_KEY_BASE muss ein langer, zufälliger String sein — mit openssl rand -hex 64 generieren.
  • Das storage-Volume enthält hochgeladene Dateien und sollte regelmäßig gesichert werden.
  • Beim ersten Start müssen Datenbankmigrationen mit rails db:migrate ausgeführt werden.
  • Campfire unterstützt keine SSO-Integration — Benutzer werden manuell angelegt.