forked from GithubBackups/vichan
- Updated Docker Compose configuration for web, PHP, and database services. - Added Redis service with health checks and environment variables. - Improved error handling and user prompts in installation scripts. - Introduced example environment variables for easier configuration. - Updated Nginx and PHP Docker images to latest versions.
71 lines
2.1 KiB
YAML
71 lines
2.1 KiB
YAML
services:
|
|
web:
|
|
build:
|
|
context: .
|
|
dockerfile: ./docker/nginx/Dockerfile
|
|
container_name: vichan_frontend
|
|
restart: unless-stopped
|
|
ports:
|
|
- "9090:80"
|
|
# - "9092:443" # optional for SSL
|
|
depends_on:
|
|
- db
|
|
- php
|
|
volumes:
|
|
- ./local-instances/${INSTANCE:-0}/www:/var/www/html
|
|
- ./docker/nginx/vichan.conf:/etc/nginx/conf.d/default.conf
|
|
- ./docker/nginx/nginx.conf:/etc/nginx/nginx.conf
|
|
- ./docker/nginx/proxy.conf:/etc/nginx/conf.d/proxy.conf
|
|
# - ./docker/nginx/ssl:/etc/nginx/ssl # optional For SSL
|
|
links:
|
|
- php
|
|
|
|
php:
|
|
build:
|
|
context: .
|
|
dockerfile: ./docker/php/Dockerfile
|
|
container_name: vichan_php
|
|
restart: unless-stopped
|
|
volumes:
|
|
- ./local-instances/${INSTANCE:-0}/www:/var/www
|
|
- ./docker/php/www.conf:/usr/local/etc/php-fpm.d/www.conf
|
|
- ./docker/php/jit.ini:/usr/local/etc/php/conf.d/jit.ini
|
|
environment:
|
|
VICHAN_MYSQL__HOST: ${VICHAN_MYSQL__HOST}
|
|
VICHAN_MYSQL__USER: ${VICHAN_MYSQL__USER}
|
|
VICHAN_MYSQL__NAME: ${VICHAN_MYSQL__NAME}
|
|
VICHAN_MYSQL__PASSWORD: ${VICHAN_MYSQL__PASSWORD}
|
|
VICHAN_SECURE_LOGIN_ONLY: ${VICHAN_SECURE_LOGIN_ONLY}
|
|
VICHAN_REDIS_HOST: ${VICHAN_REDIS_HOST}
|
|
VICHAN_REDIS_PORT: ${VICHAN_REDIS_PORT}
|
|
VICHAN_REDIS_PASSWORD: ${VICHAN_REDIS_PASSWORD}
|
|
depends_on:
|
|
- db
|
|
|
|
db:
|
|
image: mariadb:latest
|
|
container_name: vichan_mariadb
|
|
restart: unless-stopped
|
|
ports:
|
|
- "9091:3306"
|
|
environment:
|
|
MYSQL_DATABASE: ${MYSQL_DATABASE}
|
|
MYSQL_USER: ${MYSQL_USER}
|
|
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
|
|
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
|
|
volumes:
|
|
- ./local-instances/${INSTANCE:-0}/db:/var/lib/mysql
|
|
|
|
redis:
|
|
image: redis:latest
|
|
container_name: vichan_redis
|
|
restart: unless-stopped
|
|
volumes:
|
|
- ./local-instances/${INSTANCE:-0}/redis:/data
|
|
command: redis-server --requirepass ${VICHAN_REDIS_PASSWORD}
|
|
healthcheck:
|
|
test: ["CMD", "redis-cli", "-a", "${VICHAN_REDIS_PASSWORD}", "ping"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
start_period: 30s |