A custom Bookstack image build with Alpine Linux and NGINX/PHP.
- memcached
- ttf-freefont
- wkhtmltopdf
- php7-ctype
- php7-curl
- php-dom
- php7-gd
- php7-memcached
- php7-mysqlnd
- php7-pdo_mysql
- php7-phar
- php7-tidy
- php7-tokenizer
This image follows the Semantic Versioning pattern.
- MAJOR version - Changes on Base Image version (1.0.0 to 2.0.0)
- MINOR version - Changes on Bookstack version (2.1.4 to 2.1.5)
- PATCH version - Package updates and other non breaking changes on the image
- DRAFT version - Unstable build for review (Optional)
| Version | 1.0 | 1.1 | 2.0 |
|---|---|---|---|
| Base Image | 1.x.x | 1.x.x | 2.x.x |
| bookstack | 0.29.2 | 0.29.3 | 0.29.2 |
When Base Image gets upgraded the major version is incremented, when Bookstack gets upgraded the minor version is incremented.
| Tag | Description |
|---|---|
| latest | Latest version |
| 1.0.0 | Specific patch version |
| 1.0 | Specific minor version |
| 1 | Specific major version |
1.0.0-arch |
Specific patch version to that arch |
1.0-arch |
Specific minor version to that arch |
1-arch |
Specific major version to that arch |
| test | Branch version - DO NOT USE |
The version tags are the same as the repository versioning tags but without the v. The test version is only for build purposes, it should not be pulled.
The arch can be one of the supported architectures described below.
| Architecture | Tag |
|---|---|
| x86-64 | amd64 |
| arm64 | arm64v8 |
| armhf | arm32v7 |
| Name | Description |
|---|---|
| PUID | Set the UserID - Details |
| PGID | Set the GroupID - Details |
| TZ | Set the system timezone - Options |
| HTTP_TRACE | Enable HTTP trace Log (default: false) |
| DEBUG | Enable debug logs |
| DATABASE_HOST | Set the database hostname or ip address where the application will connect |
| DATABASE_NAME | Set the database name that will be used by the application |
| DATABASE_USER | Set the username for the database connection |
| DATABASE_PASS | Set the password for the database username |
| DOMAIN_NAME | Set the application domain name in case of reverse proxy |
| EMAIL_HOST | Set the SMTP server hostname |
| EMAIL_PORT | Set the SMTP server port |
| EMAIL_USER | Set the SMTP username |
| EMAIL_PASS | Set the SMPT password |
| EMAIL_SECURE | Set the SMTP security protocol (TLS, SSL, STARTTLS) |
| EMAIL_FROM | Set the SMTP email FROM |
| STORAGE_TYPE | Set storage system to use 'local', 'local_secure', 's3' |
| STORAGE_S3_KEY | Set storage s3 key |
| STORAGE_S3_SECRET | Set storage s3 secret |
| STORAGE_S3_BUCKET | Set storage s3 bucket name |
| STORAGE_S3_ENDPOINT | Set storage s3 endpoint for s3 compatibile services 'https://my-custom-s3-compatible.service.com' |
| STORAGE_URL | Set storate s3 URL format, if not set then S3 compatible URL will be generated |
It exposes a single volume at /config where it keeps the configuration and other files related with the application.
Also a single port is exposed at 80 to allow external connections to the database.
docker run \
-e PUID=1000 \
-e PGID=1000 \
-e DATABASE_HOST=mariadb_bookstack \
-e DATABASE_NAME=bookstackdb \
-e DATABASE_USER=bookstackuser \
-e DATABASE_PASS=bookstackpass \
-p 80:80 \
-v $PWD:/config \
fabiodcorreia/bookstackOr use docker-compose, an example is provided on docker-compose.yml