---
title: Mängelmelder selbst installieren
author: Holger Kreis
published_time: 03.01.2024
date: 2024-01-03
description:  Vertiefender Einblick in das Mark-a-Spot Drupal Docker Setup
tags: [Mängelmelder, Open Source Software, 311, GeoReport, Docker, Installation, Drupal Setup, Drupal CMS, Entwicklung, Testing, Bürgeranliegen, Anliegenverfolgung, Supportanfragen]
img: /assets/images/blog/docker.png
lang: de
---

<img src="/assets/images/blog/docker.png" style="float:right; margin: 0 0 0 2rem; width: 20rem" />
Mark-a-Spot ist eine Open-Source-Plattform für die Überwachung von Bürgeranliegen und ein Open311-Server, der auf dem Content-Management-System Drupal basiert. Das zugehörige Github-Repository bietet ein Docker-Setup, um Mark-a-Spot leichter betreiben zu können.

## Erste Schritte

Diese Anleitung führt Sie durch die Einrichtung eines lokalen Mark-a-Spot-Projekts für Entwicklungs- und Testzwecke.

### Voraussetzungen

Um mit der Installation zu beginnen, benötigen Sie:

- **Docker**: Eine Plattform zur Containerisierung von Anwendungen.
- **Docker Compose**: Ein Tool zur Definition und Ausführung von Docker-Anwendungen mit mehreren Containern.

### Installationsschritte

1. **Repository klonen**:
   Der erste Schritt ist das Klonen des Repositories und das Wechseln in das Verzeichnis:

    ```bash
    git clone https://github.com/markaspot/mark-a-spot.git
    cd mark-a-spot
    ```

2. **Docker-Container starten**:
   Mit dem folgenden Befehl werden die Docker-Container initialisiert und im Hintergrund gestartet:

    ```bash
    docker-compose up -d
    ```

3. **Ausführen des Start-Skripts**:
   Das `start.sh`-Skript initialisiert die Anwendung. Bei Berechtigungsproblemen sollte das Skript mit dem Befehl `chmod a+x ./scripts/start.sh` ausführbar gemacht werden.

    ```bash
   docker exec -it markaspot ./scripts/start.sh
    ```

   Das Skript bietet neben der Orts- und Landeswahl zwei Optionen:
   - `-y`: Automatische Installation mit vordefinierten Werten (New York, USA)
   - `-t`: Importiert Übersetzungsdateien und aktiviert die Übersetzung von Begriffen.

Nach Ausführung des Skripts ist die Anwendung unter http://localhost erreichbar. Beachten Sie, dass das Skript die Datenbank zurücksetzt und Mark-a-Spot von Grund auf neu initialisiert. Machen Sie sich daher mit dem Drupal-Entwicklungsprozess vertraut.

### Docker-Dienste

Das Docker Compose-Setup umfasst:

- `web`: Der Nginx-Webserver.
- `markaspot`: Die Mark-a-Spot Drupal-Anwendung.
- `db`: Die MariaDB-Datenbank.
- `phpmyadmin`: PHPMyAdmin für die Datenbankverwaltung.

### Konfiguration

Die Konfiguration der Docker-Dienste kann in der `docker-compose.yml`-Datei angepasst werden.

## Nutzung

Die Drupal-Anwendung ist unter `http://localhost` zugänglich.

PHPMyAdmin für die Datenbankverwaltung finden Sie unter `http://localhost:8080`.

## Entwicklung mit Docksal
Für die lokale Entwicklung wird [Docksal](https://docksal.io/), eine Docker-basierte Entwicklungsumgebung, empfohlen.

### Voraussetzungen

- Docksal
- Docker
- Docker Compose

## Lizenz
Mark-a-Spot steht unter der [GNU General Public License, version 2 or any later version](https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html
