Adjusted all references to match new config/ structure: - docker/config/nginx/default.conf → config/nginx/default.conf - docker/init.sql → config/docker/init.sql - docker/start.sh → config/docker/start.sh Updated files: - docker-compose.yml: Updated volume mount paths - README.md: Updated project structure documentation New structure consolidates all configuration files under config/ for better organization and clarity. Tested and verified all services running correctly. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
63 lines
1.3 KiB
YAML
63 lines
1.3 KiB
YAML
version: '3.8'
|
|
|
|
services:
|
|
php:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
container_name: php_app
|
|
ports:
|
|
- "8080:80"
|
|
volumes:
|
|
- ./src:/var/www/html
|
|
- ./tests:/var/www/tests
|
|
- ./composer.json:/var/www/composer.json
|
|
- ./composer.lock:/var/www/composer.lock
|
|
- ./phpstan.neon:/var/www/phpstan.neon
|
|
- ./phpcs.xml:/var/www/phpcs.xml
|
|
- ./config/nginx/default.conf:/etc/nginx/conf.d/default.conf
|
|
depends_on:
|
|
- mariadb
|
|
networks:
|
|
- app-network
|
|
|
|
mariadb:
|
|
image: mariadb:11.5
|
|
container_name: mariadb_db
|
|
restart: unless-stopped
|
|
environment:
|
|
MYSQL_ROOT_PASSWORD: root_password
|
|
MYSQL_DATABASE: app_database
|
|
MYSQL_USER: app_user
|
|
MYSQL_PASSWORD: app_password
|
|
ports:
|
|
- "3307:3306"
|
|
volumes:
|
|
- mariadb_data:/var/lib/mysql
|
|
- ./config/docker/init.sql:/docker-entrypoint-initdb.d/init.sql
|
|
networks:
|
|
- app-network
|
|
|
|
phpmyadmin:
|
|
image: phpmyadmin:latest
|
|
container_name: phpmyadmin
|
|
restart: unless-stopped
|
|
environment:
|
|
PMA_HOST: mariadb
|
|
PMA_PORT: 3306
|
|
MYSQL_ROOT_PASSWORD: root_password
|
|
ports:
|
|
- "8081:80"
|
|
depends_on:
|
|
- mariadb
|
|
networks:
|
|
- app-network
|
|
|
|
networks:
|
|
app-network:
|
|
driver: bridge
|
|
|
|
volumes:
|
|
mariadb_data:
|
|
driver: local
|