2025-05-29 11:23:06 +08:00
|
|
|
services:
|
2025-06-05 22:58:28 +08:00
|
|
|
git_worker:
|
|
|
|
build:
|
|
|
|
context: .
|
|
|
|
dockerfile: Dockerfile.git
|
|
|
|
container_name: ${APP_NAME}_git_worker
|
|
|
|
volumes:
|
|
|
|
- ./data:/app
|
|
|
|
- ./data/git/logs/:/var/log/
|
|
|
|
environment:
|
|
|
|
- REPO_URL=${REPO_URL}
|
|
|
|
- BRANCH=${REPO_BRANCH}
|
|
|
|
restart: unless-stopped
|
2025-06-02 10:17:50 +08:00
|
|
|
mariadb:
|
|
|
|
image: mariadb:10.6
|
|
|
|
container_name: ${APP_NAME}_db
|
|
|
|
restart: always
|
|
|
|
environment:
|
|
|
|
MYSQL_ROOT_PASSWORD: root
|
|
|
|
MYSQL_DATABASE: ${DB_DATABASE}
|
|
|
|
MYSQL_USER: ${DB_USERNAME}
|
|
|
|
MYSQL_PASSWORD: ${DB_PASSWORD}
|
|
|
|
volumes:
|
2025-06-03 10:14:29 +08:00
|
|
|
- ./data/mariadb/lib:/var/lib/mysql
|
|
|
|
- ./data/mariadb/conf.d:/etc/mysql/conf.d
|
|
|
|
- ./data/mariadb/logs:/var/log/mysql
|
2025-06-02 10:17:50 +08:00
|
|
|
- ./docker/mariadb/my.cnf:/etc/mysql/conf.d/custom.cnf
|
|
|
|
ports:
|
|
|
|
- "3306:3306"
|
|
|
|
networks:
|
|
|
|
- app_network
|
2025-05-29 11:23:06 +08:00
|
|
|
app:
|
|
|
|
build:
|
|
|
|
context: .
|
|
|
|
dockerfile: Dockerfile
|
2025-06-02 10:17:50 +08:00
|
|
|
container_name: ${APP_NAME}_app
|
2025-05-29 11:23:06 +08:00
|
|
|
volumes:
|
2025-06-02 15:24:15 +08:00
|
|
|
- ./data/html:/var/www/html
|
2025-06-03 10:14:29 +08:00
|
|
|
- ./data/php/logs:/var/www/logs
|
2025-06-03 11:41:11 +08:00
|
|
|
- ./docker/php/php.ini:/usr/local/etc/php/conf.d/custom-php.ini
|
2025-06-03 10:57:19 +08:00
|
|
|
- ./docker/php/opcache.ini:/usr/local/etc/php/conf.d/opcache.ini
|
2025-05-29 11:23:06 +08:00
|
|
|
depends_on:
|
|
|
|
- mariadb
|
|
|
|
environment:
|
2025-06-02 10:17:50 +08:00
|
|
|
APP_NAME: ${APP_NAME}
|
2025-05-29 16:07:55 +08:00
|
|
|
APP_URL: ${APP_URL}
|
2025-05-29 16:57:17 +08:00
|
|
|
DB_HOST: ${DB_HOST}
|
|
|
|
DB_PORT: ${DB_PORT}
|
2025-05-29 12:54:50 +08:00
|
|
|
DB_DATABASE: ${DB_DATABASE}
|
|
|
|
DB_USERNAME: ${DB_USERNAME}
|
|
|
|
DB_PASSWORD: ${DB_PASSWORD}
|
2025-05-29 11:23:06 +08:00
|
|
|
networks:
|
2025-05-29 17:27:58 +08:00
|
|
|
- app_network
|
|
|
|
nginx:
|
|
|
|
image: nginx:stable-alpine
|
2025-06-02 10:17:50 +08:00
|
|
|
container_name: ${APP_NAME}_nginx
|
2025-05-29 11:23:06 +08:00
|
|
|
ports:
|
2025-05-29 18:14:44 +08:00
|
|
|
- "80:80"
|
2025-05-29 11:23:06 +08:00
|
|
|
volumes:
|
2025-06-02 15:24:15 +08:00
|
|
|
- ./data/html:/var/www/html
|
2025-06-03 10:14:29 +08:00
|
|
|
- ./data/nginx/conf.d/:/etc/nginx/conf.d/
|
|
|
|
- ./data/nginx/logs/:/var/log/nginx
|
2025-06-02 10:17:50 +08:00
|
|
|
- ./docker/nginx/:/etc/nginx/templates
|
2025-05-29 17:27:58 +08:00
|
|
|
depends_on:
|
|
|
|
- app
|
2025-06-02 10:17:50 +08:00
|
|
|
environment:
|
|
|
|
NGINX_HOST: ${APP_DOMAIN}
|
|
|
|
NGINX_PORT: ${APP_PORT}
|
2025-05-29 11:23:06 +08:00
|
|
|
networks:
|
2025-05-29 17:27:58 +08:00
|
|
|
- app_network
|
2025-06-02 11:55:42 +08:00
|
|
|
queue:
|
|
|
|
build:
|
|
|
|
context: .
|
|
|
|
dockerfile: Dockerfile.queue
|
2025-06-02 17:05:10 +08:00
|
|
|
container_name: ${APP_NAME}_queue
|
2025-06-02 11:55:42 +08:00
|
|
|
volumes:
|
2025-06-02 15:24:15 +08:00
|
|
|
- ./data/html:/var/www/html
|
2025-06-03 10:14:29 +08:00
|
|
|
- ./data/queue/logs:/var/www/logs
|
2025-06-02 17:05:10 +08:00
|
|
|
- ./docker/supervisord.conf:/etc/supervisor/conf.d/supervisord.conf
|
2025-06-02 11:55:42 +08:00
|
|
|
depends_on:
|
|
|
|
- nginx
|
|
|
|
networks:
|
|
|
|
- app_network
|
2025-05-29 11:23:06 +08:00
|
|
|
networks:
|
2025-05-29 17:27:58 +08:00
|
|
|
app_network:
|
2025-06-02 10:55:14 +08:00
|
|
|
name: ${APP_NAME}_network
|
|
|
|
external: true
|