Menu

CRM-Installation über Docker

Mithilfe von Docker lässt sich 1CRM in Nullkommanichts installieren. Ideal, um schnell eine Testumgebung zu erstellen. Für Produktivumgebungen bitte die Konfiguration individuell anpassen.

Voraussetzungen

Zielgruppen: Admin
Sonstige: Docker Desktop: https://docs.docker.com/get-docker/

Schnellanleitung

  1. Docker installieren, falls noch nicht vorhanden
  2. Ordner für die 1CRM-Installation erstellen
  3. docker-compose.yml gemäß nachfolgendem Beispiel anlegen
  4. für Produktivumgebung Konfiguration in der Datei anpassen
  5. Installation starten: #> docker-compose up
  6. Zeitzone einstellen
  7. Lizenz eintragen

Was ist Docker?

Docker ist ein Tool, mit dem sich auf einem Computer oder Server vorgefertigte Anwendungs-Images als sogenannte Container starten lassen. In dem jeweiligen Image sind alle erforderlichen Software-Komponenten enthalten; die Anwendungen werden dadurch universell und schnell einsetzbar.

In dieser Anleitung verwenden wir Docker-Compose, um über eine einfache Konfigurationsdatei eine Multi-Container-Umgebung zu definieren. Diese besteht aus dem Datenbankserver und dem Webserver mit 1CRM. Innerhalb der Konfigurationsdatei lassen sich Parameter, wie Passwörter und URLs dieser Umgebung einfach anpassen. Weitergehende Informationen gibt es unter https://docs.docker.com/compose/.

Installation von Docker

Voraussetzung für die Verwendung des 1CRM Docker-Images ist ein installiertes Docker inklusive Docker Compose

  • Die Installation unter Windows, Mac und Linux ist unter https://docs.docker.com/get-docker/ beschrieben
  • NAS-Systeme von QNAP und Synology bringen z.B. die ContainerStation mit, über die Docker-Container und Compose-Dateien direkt gestartet werden können

Was enthält das Docker Image?

Das 1CRM Docker Image beinhaltet einen Webserver mit PHP und lädt beim ersten Start automatisch das 1CRM Installationspaket herunter. Mit der gezeigten Konfiguration wird im Anschluss automatisch die Installation gestartet, so dass 1CRM nach etwa einer Minute über https://localhost aufgerufen werden kann (Benutzer admin, Passwort visual4). Das Image basiert auf webdevops/php-nginx. Die Basis ist dabei NGINX und php-fpm 8.1 mit 1CRM-spezifischen Konfigurationen:

Falls der Webserver über andere Ports als 80 und 443 laufen soll, muss die 1CRM-Installation manuell durchgeführt werden. Entfernen Sie dazu in der docker-compose.yml das Passwort bei CRM_DB_PASSWORD.

In Image enthalten Detailinformationen
1crmredirects
Ausgabe des Logfiles über docker logs
Download 1CRM Entpackt nach /app
1CRM Cronjob Aufruf scheduler.php alle 5 Minuten
Deaktivierung Postfix/sendmail Mailversand über SMTP
Zertifikat (selbstsigniert)

Update des Images

Über gitlab.visual4.de werden regelmäßig neue Versionen des Images mit aktualisierten Upstream-Paketen erstellt. Die aktualisierten Images lassen sich mithilfe von docker pull gitlab.visual4.de:5050/docker/nginx-php-1crm:latest herunterladen (ggf. Version/Tag anpassen).

1CRM aktualisiert sich nicht automatisch, das muss im Rahmen einer gültigen Subscription über die integrierte Update-Funktion erfolgen, aber NGINX und PHP werden durch den Pull aktualisiert. Entsprechend sollte auch mit dem Datenbank-Image verfahren werden.

1CRM Testsystem mit Docker Compose erstellen

Ihr 1CRM-Ordner: docker-compose.yml
Automatische Installation von 1CRM

Die 1CRM-Installation startet direkt nach dem Ausführen der composer-Datei. Voraussetzungen hierfür sind eine gesetzte Umgebungsvariable CRM_DB_PASSWORD sowie das Fehlen der sugar_version.php-Datei im /app-Verzeichnis.

Zum schnellen Aufsetzen von 1CRM zum Testen, gehen Sie wie folgt vor:

1 Konfigurationsdatei erstellen

Beispielkonfiguration für Testsystem

Die hier dargestellte Konfiguration ist für das schnelle Testen gedacht. Für Produktivsysteme ist die Konfiguration zu bearbeiten, siehe Abschnitt 1CRM Live-System mit Docker Compose erstellen.

2 Installation starten

Nach Anlegen der Datei können Sie die Installation mit dem Befehl #> docker compose up (Linux) / docker compose up (Windows) starten.

Ports freihalten

Vor dem Start müssen ggf. andere Server, die auf demselben Rechner Dienste über Port 80/443 zur Verfügung stellen deaktiviert werden (z.B. WAMP/XAMPP).

3 1CRM aufrufen

Nachdem die Installation durchgelaufen ist, können Sie sich über https://localhost an 1CRM anmelden.

Benutzer: admin
Passwort: visual4

4 Zeitzone einstellen

5 Lizenz eintragen

[OPTIONAL] Automatische Installation deaktivieren

Wenn Sie den Installationswizard manuell durchgehen möchten, können Sie die automatische Installation deaktivieren.

1 CRM_DB_PASSWORD auskommentieren

Ist die Umgebungsvariable CRM_DB_PASSWORD in der docker-compose.yml-Datei nicht gesetzt, wird beim Aufrufen von 1CRM der Installationswizard angezeigt.

2 MySQL-Zugangsdaten in der docker-compose.yml anpassen

3 Installation starten

4 Datenbankserver mysql auswählen

Während der Installation muss als Datenbankserver mysql eingegeben werden.

Weitere Informationen zum Installationswizard finden Sie unter: https://1crm-system.de/anleitungen/1crm-installieren/#schritt-2-crm-installieren

5 Installation abschließen wie oben

1CRM Live-System mit Docker Compose installieren

Haftungsausschluss

Aufgrund der mehrstufigen Software-Supply-Chain übernimmt die visual4 GmbH keine Verantwortung für das rechtzeitige Einspielen von erforderlichen Sicherheitsupdates in die unter gitlab.visual4.de zu Testzwecken zur Verfügung gestellten Docker-Images.

Wichtig bei Produktivumgebungen

Docker löscht Daten, wenn ein Container gelöscht wird! Backup und Konfiguration der Volumes sind entscheidend um Datenverlust zu vermeiden.

Voraussetzungen

Zielgruppen: Admin
Sonstige: docker-compose.yml

Die oben gezeigte Konfigurationsdatei kann als Startpunkt für eigene Konfigurationen verwendet werden. Für ein Live- oder Produktivsystem müssen zumindest die folgenden Punkte individuell gelöst und konfiguriert werden:

  • ggf. direkte Verwendung von PHP- und NGINX Docker-Images, hier muss Sicherheit gegen Einfachheit abgewogen werden.
  • Verwendung sicherer Passwörter, Auslagerung in eine .env-Datei
  • Erstellung persistenter Volumes für 1CRM und MariaDB
  • Verwendung eines gültigen SSL-Zertifikates mit eigener Domain, z.B. über einen Letsencrypt-Reverse-Proxy oder einen Loadbalancer
  • Daemonisierung und automatischer Start der Container
  • Backup der Volumes, Backup der Datenbank über mysqldump
  • regelmäßige Aktualisierung der Basis-Images um Sicherheitsupdates in PHP, MariaDB und NGINX zeitnah einzuspielen. Der visual4-Buildserver aktualisiert wöchentlich das master/latest-Image auf Basis des webdevops/php-nginx Basisimages.

1CRM aktivieren

Administration: Lizenzinformationen

Wenn Sie nach der Installation 1CRM zum ersten Mal über den Browser aufrufen, werden Sie dazu aufgefordert, Ihre Zeitzone einzustellen. Danach sollten Sie direkt zu den Lizenzinformationen weitergeleitet werden.

1CRM System hat 4,77 von 5 Sternen 33 Bewertungen auf ProvenExpert.com