Bookstack, verified and packaged by Elestio
605
A better community platform for the modern web.
bookstack is a simple, self-hosted, easy-to-use platform for organising and storing information.
Deploy a fully managed bookstack on elest.io to create a structured knowledge store for personal, team, or company use. BookStack focuses on ease-of-use and design to provide an experience suitable for an audience with, potentially, mixed skills in technology.
You can deploy it easily with the following command:
git clone https://github.com/elestio-examples/bookstack.git
Copy the .env file from tests folder to the project directory
cp ./tests/.env ./.env
Edit the .env file with your own values.
Run the project with the following command
docker-compose up -d
You can access the Web UI at: http://your-domain:8080
Here are some example snippets to help you get started creating a container.
version: "3"
volumes:
db: {}
services:
db:
image: mysql:8
environment:
MYSQL_DATABASE: bookstack-dev
MYSQL_USER: bookstack-test
MYSQL_PASSWORD: bookstack-test
MYSQL_RANDOM_ROOT_PASSWORD: "true"
command: --default-authentication-plugin=mysql_native_password
volumes:
- ./init.db:/docker-entrypoint-initdb.d
- db:/var/lib/mysql
app:
# build:
# context: .
# dockerfile: ./Dockerfile
image: elestio4test/bookstack:latest
environment:
APP_URL: http://localhost:${DEV_PORT:-8080}
DB_CONNECTION: mysql
DB_HOST: db
DB_PORT: 3306
DB_DATABASE: bookstack-dev
DB_USERNAME: bookstack-test
DB_PASSWORD: bookstack-test
TEST_DATABASE_URL: mysql://bookstack-test:bookstack-test@db/bookstack-test
MAIL_DRIVER: smtp
MAIL_HOST: mailhog
MAIL_PORT: 1025
ports:
- ${DEV_PORT:-8080}:80
volumes:
- ./:/app
- ./php/conf.d/xdebug.ini:/usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini
entrypoint: entrypoint.app.sh
extra_hosts:
- "host.docker.internal:host-gateway"
node:
image: node:alpine
working_dir: /app
user: node
volumes:
- ./:/app
entrypoint: entrypoint.node.sh
mailhog:
image: mailhog/mailhog
ports:
- ${DEV_MAIL_PORT:-8025}:8025
| Variable | Value (example) |
|---|---|
| ADMIN_PASSWORD | password |
| ADMIN_EMAIL | [email protected] |
| ADMIN_USERNAME | admin |
| SOFTWARE_VERSION_TAG | latest |
| APP_KEY | 32 Char String |
| APP_ENV | production |
| APP_URL | https://example.com |
| DB_HOST | localhost |
| DB_DATABASE | database-name |
| DB_USERNAME | database-username |
| DB_PASSWORD | database_user_password |
| MAIL_DRIVER | smtp |
| MAIL_FROM_NAME | "name" |
| MAIL_FROM | [email protected] |
| MAIL_HOST | localhost |
| MAIL_PORT | 587 |
| MAIL_USERNAME | name |
| MAIL_PASSWORD | passsword |
| MAIL_ENCRYPTION | null |
The Elestio Bookstack Docker image sends the container logs to stdout. To view the logs, you can use the following command:
docker-compose logs -f
To stop the stack you can use the following command:
docker-compose down
To make backup and restore operations easier, we are using folder volume mounts. You can simply stop your stack with docker-compose down, then backup all the files and subfolders in the folder near the docker-compose.yml file.
Creating a ZIP Archive For example, if you want to create a ZIP archive, navigate to the folder where you have your docker-compose.yml file and use this command:
zip -r myarchive.zip .
Restoring from ZIP Archive To restore from a ZIP archive, unzip the archive into the original folder using the following command:
unzip myarchive.zip -d /path/to/original/folder
Starting Your Stack Once your backup is complete, you can start your stack again with the following command:
docker-compose up -d
That's it! With these simple steps, you can easily backup and restore your data volumes using Docker Compose.
Content type
Image
Digest
sha256:762c22b84…
Size
310.6 MB
Last updated
about 3 years ago
docker pull elestio4test/bookstack