first
This commit is contained in:
47
docker-compose.prod.yml
Normal file
47
docker-compose.prod.yml
Normal file
@@ -0,0 +1,47 @@
|
||||
###############################################################################
|
||||
# KOIPB MAT — Docker Compose Production Override (Ubuntu Server)
|
||||
#
|
||||
# Penggunaan:
|
||||
# docker compose -f docker-compose.yml -f docker-compose.prod.yml up -d --build
|
||||
#
|
||||
# Perbezaan dari dev:
|
||||
# • APP_ENV=production, APP_DEBUG=false → config/route/view cache
|
||||
# • restart: always
|
||||
# • php-dev.ini diganti dgn php-prod.ini (opcache.validate_timestamps=0)
|
||||
# • Nginx dengar pada port 80
|
||||
# • MySQL TIDAK dedah port ke host (akses dalaman sahaja)
|
||||
###############################################################################
|
||||
name: koipb
|
||||
|
||||
services:
|
||||
|
||||
mysql:
|
||||
restart: always
|
||||
ports: [] # jangan dedah MySQL ke host pada production
|
||||
|
||||
app:
|
||||
restart: always
|
||||
environment:
|
||||
APP_ENV: production
|
||||
APP_DEBUG: "false"
|
||||
DB_HOST: mysql
|
||||
DB_PORT: "3306"
|
||||
volumes:
|
||||
- ./:/var/www/html
|
||||
- ./docker/php/php.ini:/usr/local/etc/php/conf.d/99-koipb.ini:ro
|
||||
- ./docker/php/php-prod.ini:/usr/local/etc/php/conf.d/99-koipb-prod.ini:ro
|
||||
|
||||
nginx:
|
||||
restart: always
|
||||
ports:
|
||||
- "${APP_PORT:-80}:80"
|
||||
|
||||
# ── Node (opsional) ────────────────────────────────────────────────────────
|
||||
# UI guna CDN + CSS statik (public/css/koipb.css) — TIADA langkah build Vite.
|
||||
# Service ini hanya jika anda menambah aset yang perlu di-compile.
|
||||
# node-build:
|
||||
# image: node:lts-alpine
|
||||
# working_dir: /app
|
||||
# volumes: [ ./:/app ]
|
||||
# command: sh -c "npm ci && npm run build"
|
||||
# profiles: [ build ]
|
||||
Reference in New Issue
Block a user