Everything you need to install, configure and run APBoard. Explained in full, even for complete beginners.
Updates replace the application files and may run database migrations automatically on the next request. Always back up your data before you update.
A backup is your way back if a release, a server command or a migration fails. Back up the database, uploads and configuration before every update.
public/shared/uploads/, because it contains user uploaded files and cached remote avatars.deploy/.env.config.php.
Run these commands from the APBoard repository root and then from deploy/.
Replace the path with your own installation path.
cd /home/apboard/forum/deploy
docker compose exec db mariadb-dump -u root -p"$APBOARD_DB_ROOT_PASSWORD" "$APBOARD_DB_NAME" > apboard-backup.sql
cd /home/apboard/forum
git pull
cd deploy
docker compose up -d --build --remove-orphans
docker compose ps
The app container starts with the current code. It recreates asset links, updates Composer dependencies if needed and writes config.php from .env.
APBoard checks update/migrations/ during normal application startup and records completed migrations in the apb_migrations table.
Download the new release ZIP, extract it into a temporary directory and copy it over the existing installation.
Keep your existing config.php and uploads.
mysqldump -u apboard -p apboard > apboard-backup.sql
cp /var/www/apboard/config.php ./config.php.backup
tar -czf uploads-backup.tar.gz -C /var/www/apboard public/shared/uploads
cd /tmp
unzip apboard-v3-new.zip -d apboard-new
sudo rsync -av \
--exclude='config.php' \
--exclude='public/shared/uploads/' \
/tmp/apboard-new/ /var/www/apboard/
sudo chown -R www-data:www-data /var/www/apboard
Open the forum in your browser after copying the files. APBoard runs pending migrations during startup.
There is no artisan command in APBoard.
Stop and keep the evidence. Copy the exact error message, the APBoard version or Git commit, and the last log lines. Restore the file backup and database backup only if you need to return to the old version.
# Docker logs
cd /home/apboard/forum/deploy
docker compose logs --tail 200 app
docker compose logs --tail 200 db
# Apache logs on a plain server
sudo tail -200 /var/log/apache2/apboard_error.log