APBoard v3 · Dokumentation
Dokumentation

Alles was du brauchst, um APBoard zu installieren, zu konfigurieren und zu betreiben. Ausführlich erklärt, auch für absolute Einsteiger.

APBoard Dokumentation Konfiguration

Konfiguration

APBoard speichert seine Laufzeitkonfiguration in config.php. Docker erzeugt diese Datei aus deploy/.env. Eine normale Webserver Installation erzeugt sie im Setup Assistenten.

1. Docker: deploy/.env ist die Quelle

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.

Instanz und URL

VariableVerwendung
COMPOSE_PROJECT_NAMEEindeutiger Docker Compose Projektname. Er beeinflusst Container Namen und Traefik Router Namen.
APBOARD_URLVollständige öffentliche URL, zum Beispiel https://forum.example.com. Kein Schrägstrich am Ende.
APBOARD_DOMAINNur die Domain, zum Beispiel forum.example.com. Traefik nutzt sie in der Routing Regel.

Datenbank

VariableVerwendung
APBOARD_DB_HOSTIn Docker db verwenden. Bei normalen Installationen steht dieser Wert in config.php als Datenbankhost.
APBOARD_DB_NAMEName der APBoard Datenbank.
APBOARD_DB_USERDatenbankbenutzer, den APBoard im Betrieb nutzt.
APBOARD_DB_PASSWORDPasswort für den APBoard Datenbankbenutzer.
APBOARD_DB_ROOT_PASSWORDMariaDB Root Passwort des Datenbankcontainers.
APBOARD_DB_PREFIXTabellenpräfix. Standard ist apb_. Lass diesen Wert unverändert, wenn du keinen besonderen Grund hast.

Erstes Admin Konto

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.

SMTP Mail

VariableBeispielVerwendung
APBOARD_SMTP_HOSTsmtp.example.comHostname des SMTP Servers.
APBOARD_SMTP_PORT587587 für STARTTLS oder 465 für SMTPS.
APBOARD_SMTP_AUTHtrueSMTP Anmeldung verwenden. Die meisten Anbieter verlangen sie.
APBOARD_SMTP_SECUREstarttlsstarttls, smtps oder none.
APBOARD_SMTP_USERnoreply@example.comBenutzername für SMTP.
APBOARD_SMTP_PASSMail PasswortSMTP Passwort oder App Passwort.
APBOARD_SMTP_FROM_EMAILnoreply@example.comAbsenderadresse in APBoard E Mails.
APBOARD_SMTP_FROM_NAMEMein ForumAbsendername in Mailprogrammen.

2. Normale Installation: config.php ist die Quelle

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
<?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'];

3. URL und vertrauenswürdige Proxies

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.

4. Tabellenpräfix

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.

5. Von Docker erzeugte Datei

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.

bash
cd /home/apboard/forum/deploy
nano .env
docker compose up -d --build