43c2fc3c37
Tested on my machine via fresh dev instance with tests passing. May need old users to drop their old volume data.
52 lines
1.3 KiB
YAML
52 lines
1.3 KiB
YAML
# This is a Docker Compose configuration
|
|
# intended for development purposes only
|
|
|
|
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:
|
|
- ./dev/docker/init.db:/docker-entrypoint-initdb.d
|
|
- db:/var/lib/mysql
|
|
app:
|
|
build:
|
|
context: .
|
|
dockerfile: ./dev/docker/Dockerfile
|
|
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
|
|
entrypoint: /app/dev/docker/entrypoint.app.sh
|
|
node:
|
|
image: node:alpine
|
|
working_dir: /app
|
|
user: node
|
|
volumes:
|
|
- ./:/app
|
|
entrypoint: /app/dev/docker/entrypoint.node.sh
|
|
mailhog:
|
|
image: mailhog/mailhog
|
|
ports:
|
|
- ${DEV_MAIL_PORT:-8025}:8025
|