markuspoerschke/guestbook

View on GitHub
docker-compose.common.yaml

Summary

Maintainability
Test Coverage
version: '3.9'

services:
  app:
    extends:
      service: build
    environment:
      GUESTBOOK_DB_DSN: mysql:dbname=guestbook;host=database
      GUESTBOOK_DB_USER: guestbook
      GUESTBOOK_DB_PASSWORD: guestbook

  build:
    build:
      context: .
      target: builder
    environment:
      COMPOSER_HOME: /var/composer
    volumes:
      - .:/var/www
      - composer:/var/composer

  database:
    image: mysql:8
    environment:
      MYSQL_ROOT_PASSWORD: root
      MYSQL_DATABASE: guestbook
      MYSQL_USER: guestbook
      MYSQL_PASSWORD: guestbook
    volumes:
      - ./etc/schema.sql:/docker-entrypoint-initdb.d/01-schema.sql
    healthcheck:
      test: "mysqladmin ping -h$$HOSTNAME -uroot -proot"
      retries: 10
      timeout: 1s
      interval: 2s
      start_period: 10s

volumes:
  composer: