59 lines
1.2 KiB
YAML
59 lines
1.2 KiB
YAML
version: '2.4'
|
|
|
|
services:
|
|
app:
|
|
image: 'monica:2.20.0-apache'
|
|
restart: 'always'
|
|
|
|
healthcheck:
|
|
test: 'curl -f localhost:8080 || exit 1'
|
|
interval: '1m'
|
|
timeout: '10s'
|
|
retries: 3
|
|
start_period: '10s'
|
|
depends_on:
|
|
db:
|
|
condition: 'service_started'
|
|
redis:
|
|
condition: 'service_healthy'
|
|
|
|
env_file:
|
|
- '.env'
|
|
networks:
|
|
- 'default'
|
|
- 'nginx'
|
|
volumes:
|
|
- 'data:/var/www/html/storage'
|
|
|
|
db:
|
|
image: 'mysql:8.0.24'
|
|
restart: 'always'
|
|
command: '--default-authentication-plugin=mysql_native_password'
|
|
|
|
environment:
|
|
- 'MYSQL_RANDOM_ROOT_PASSWORD=true'
|
|
- 'MYSQL_DATABASE=monica'
|
|
- 'MYSQL_USER=monica'
|
|
- 'MYSQL_PASSWORD=monica'
|
|
|
|
volumes:
|
|
- 'db-data:/var/lib/mysql'
|
|
|
|
redis:
|
|
image: 'redis:6.2.2-alpine'
|
|
restart: 'always'
|
|
|
|
healthcheck:
|
|
test: 'redis-cli -h localhost ping'
|
|
interval: '10s'
|
|
timeout: '5s'
|
|
retries: 3
|
|
|
|
networks:
|
|
nginx:
|
|
external: true
|
|
|
|
volumes:
|
|
data:
|
|
db-data:
|