$ show linuxserver/docker-bookstack
This repository packages the BookStack wiki application into a Docker container. It provides Dockerfiles for building images on x86_64 and ARM64, using a base Alpine image with Nginx and PHP-FPM. Container initialization scripts handle database connection waiting, app key generation, Laravel migrations, and optional async queue worker. The repository includes a Jenkins pipeline and GitHub Actions workflows for automated builds and multi-registry releases. The codebase is well-structured, with clear separation of concerns between base image configuration, service management via s6-overlay, and application setup logic. It is a production-grade container build for self-hosting BookStack.
The LLM identified 2 files worth highlighting for reuse:
Initializes BookStack application: creates directories, checks for app key, waits for database availability, runs Laravel migrations, and sets permissions. This script is a robust pattern for initializing a PHP application with database dependencies within a container, reusable for other Laravel/php apps.
Conditionally enables the queue worker service by creating an s6 service file if the QUEUE_CONNECTION environment variable is set. Demonstrates a pattern for optional services in s6 overlay containers.