homelab/docker/dockerino/bookstack/docker-compose.yml
gaia 893e7dba7c feat: inicial IaC - estrutura base + Docker Compose + Ansible
- Estrutura Terraform para ER605/Omada
- Ansible inventory e role base para Dockerino
- Docker Compose files para todos os serviços do Dockerino
- Docker Compose para Media stack (Jellyfin, Sonarr, Radarr, etc)
- Documentação ARCHITECTURE.md e NEXT_STEPS.md (via Héstia)
2026-04-09 01:06:05 -03:00

48 lines
1.2 KiB
YAML

version: '3.8'
services:
bookstack-mysql:
image: mysql:8.3
container_name: bookstack-mysql
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: ${BOOKSTACK_DB_ROOT:-rootpassword}
MYSQL_DATABASE: bookstack
MYSQL_USER: bookstack
MYSQL_PASSWORD: ${BOOKSTACK_DB_PASSWORD:-bookstack123}
volumes:
- ./mysql-data:/var/lib/mysql
healthcheck:
test: ["CMD-SHELL", "mysqladmin ping -h localhost"]
interval: 10s
timeout: 5s
retries: 5
bookstack:
image: solidnerd/bookstack:latest
container_name: bookstack
restart: unless-stopped
ports:
- "8082:8080"
depends_on:
bookstack-mysql:
condition: service_healthy
environment:
DB_HOST: bookstack-mysql
DB_DATABASE: bookstack
DB_USERNAME: bookstack
DB_PASSWORD: ${BOOKSTACK_DB_PASSWORD:-bookstack123}
APP_KEY: ${BOOKSTACK_APP_KEY:-base64:CHANGE_ME}
APP_URL: https://bookstack.hackerfortress.cc
TZ: America/Sao_Paulo
healthcheck:
test: ["CMD-SHELL", "wget --no-verbose --tries=1 --spider http://localhost:8080 || exit 1"]
interval: 30s
timeout: 10s
retries: 3
networks:
default:
name: homelab-network
external: true