Alles was du brauchst, um APBoard zu installieren, zu konfigurieren und zu betreiben. Ausführlich erklärt, auch für absolute Einsteiger.
APBoard speichert seine Laufzeitkonfiguration in config.php.
Docker erzeugt diese Datei aus deploy/.env. Eine normale Webserver Installation erzeugt sie im Setup Assistenten.
Bei Docker bearbeitest du deploy/.env. Bei jedem Start des App Containers wird daraus eine neue config.php geschrieben.
Bearbeite config.php in einer Docker Installation nicht von Hand, weil deine Änderungen beim nächsten Containerstart überschrieben werden.
| Variable | Verwendung |
|---|---|
COMPOSE_PROJECT_NAME | Eindeutiger Docker Compose Projektname. Er beeinflusst Container Namen und Traefik Router Namen. |
APBOARD_URL | Vollständige öffentliche URL, zum Beispiel https://forum.example.com. Kein Schrägstrich am Ende. |
APBOARD_DOMAIN | Nur die Domain, zum Beispiel forum.example.com. Traefik nutzt sie in der Routing Regel. |
| Variable | Verwendung |
|---|---|
APBOARD_DB_HOST | In Docker db verwenden. Bei normalen Installationen steht dieser Wert in config.php als Datenbankhost. |
APBOARD_DB_NAME | Name der APBoard Datenbank. |
APBOARD_DB_USER | Datenbankbenutzer, den APBoard im Betrieb nutzt. |
APBOARD_DB_PASSWORD | Passwort für den APBoard Datenbankbenutzer. |
APBOARD_DB_ROOT_PASSWORD | MariaDB Root Passwort des Datenbankcontainers. |
APBOARD_DB_PREFIX | Tabellenpräfix. Standard ist apb_. Lass diesen Wert unverändert, wenn du keinen besonderen Grund hast. |
Docker verwendet APBOARD_FIRST_ADMIN_EMAIL und APBOARD_FIRST_ADMIN_PASSWORD nur zur Einrichtung des ersten Administrators.
Das Hilfsskript ändert den Platzhalter Admin nur, solange er noch die Platzhalter Adresse admin@example.com nutzt.
Sobald du das Konto in APBoard geändert hast, überschreibt Docker es nicht mehr.
| Variable | Beispiel | Verwendung |
|---|---|---|
APBOARD_SMTP_HOST | smtp.example.com | Hostname des SMTP Servers. |
APBOARD_SMTP_PORT | 587 | 587 für STARTTLS oder 465 für SMTPS. |
APBOARD_SMTP_AUTH | true | SMTP Anmeldung verwenden. Die meisten Anbieter verlangen sie. |
APBOARD_SMTP_SECURE | starttls | starttls, smtps oder none. |
APBOARD_SMTP_USER | noreply@example.com | Benutzername für SMTP. |
APBOARD_SMTP_PASS | Mail Passwort | SMTP Passwort oder App Passwort. |
APBOARD_SMTP_FROM_EMAIL | noreply@example.com | Absenderadresse in APBoard E Mails. |
APBOARD_SMTP_FROM_NAME | Mein Forum | Absendername in Mailprogrammen. |
Bei einer normalen Installation schreibt der Setup Assistent config.php in das APBoard Wurzelverzeichnis.
APBoard liest diese Datei bei jeder Anfrage. Du kannst sie später bearbeiten, wenn sich Datenbank, URL oder SMTP Daten ändern.
<?php
$GLOBALS['CONFIG']['url'] = 'https://forum.example.com';
$GLOBALS['CONFIG']['db_server'] = 'localhost';
$GLOBALS['CONFIG']['db_database'] = 'apboard';
$GLOBALS['CONFIG']['db_user'] = 'apboard';
$GLOBALS['CONFIG']['db_password'] = 'Datenbankpasswort';
$GLOBALS['CONFIG']['db_tableprepend'] = 'apb_';
$GLOBALS['CONFIG']['smtp_host'] = 'smtp.example.com';
$GLOBALS['CONFIG']['smtp_port'] = 587;
$GLOBALS['CONFIG']['smtp_auth'] = true;
$GLOBALS['CONFIG']['smtp_user'] = 'noreply@example.com';
$GLOBALS['CONFIG']['smtp_pass'] = 'Mail Passwort';
$GLOBALS['CONFIG']['smtp_fromemail'] = 'noreply@example.com';
$GLOBALS['CONFIG']['smtp_fromname'] = 'Mein Forum';
$GLOBALS['CONFIG']['smtp_secure'] = 'starttls';
$GLOBALS['CONFIG']['trusted_proxies'] = ['127.0.0.1', '::1', '172.16.0.0/12']; url muss exakt zur öffentlichen Forum URL passen. APBoard verwendet sie für Links, Mail Inhalte, Host Prüfung und Sitemap.
Wenn deine öffentliche Seite HTTPS nutzt, muss dieser Wert mit https:// beginnen.
trusted_proxies sagt APBoard, welche Reverse Proxies Header wie X-Forwarded-Proto liefern dürfen.
Docker hinter Traefik nutzt dafür den privaten Docker Netzwerkbereich 172.16.0.0/12.
Auf einem einfachen normalen Webserver ohne Reverse Proxy sind die Standardwerte in Ordnung.
Das Tabellenpräfix ist normalerweise apb_.
Der normale Setup Assistent kann den initialen SQL Dump mit einem anderen Präfix importieren, aber du solltest das nur vor der ersten Installation ändern.
Ändere das Präfix nicht nachträglich, außer du weißt genau, wie du alle Tabellen umbenennst und config.php anpasst.
Bei Docker wird config.php beim Containerstart erzeugt. Das ist normal.
Wenn du die Konfiguration ändern möchtest, bearbeite deploy/.env und erstelle den App Container neu.
cd /home/apboard/forum/deploy
nano .env
docker compose up -d --build