44 lines
1.4 KiB
YAML
44 lines
1.4 KiB
YAML
# File: specs/04-Infrastructure-OPS/04-00-docker-compose/x-base.yml
|
|
# DMS Container v1.8.6 — Shared anchors (S2)
|
|
# ============================================================
|
|
# วิธีใช้ (Docker Compose V2 `include:`):
|
|
#
|
|
# # ในไฟล์ docker-compose.yml ของแต่ละ stack
|
|
# include:
|
|
# - path: ../x-base.yml
|
|
#
|
|
# services:
|
|
# mysvc:
|
|
# <<: [*restart_policy, *default_logging, *hardening]
|
|
# image: ...
|
|
#
|
|
# หมายเหตุ:
|
|
# - ไฟล์นี้ "ไม่มี services" — ใช้เฉพาะเก็บ YAML anchors
|
|
# - ถ้า Compose version เก่าที่ยังไม่รองรับ `include:` ให้ copy anchors เหล่านี้
|
|
# ไปไว้ในแต่ละไฟล์โดยตรง (pattern ปัจจุบันของ repo)
|
|
# ============================================================
|
|
|
|
x-restart: &restart_policy
|
|
restart: unless-stopped
|
|
|
|
x-logging: &default_logging
|
|
logging:
|
|
driver: 'json-file'
|
|
options:
|
|
max-size: '10m'
|
|
max-file: '5'
|
|
|
|
# ค่า hardening มาตรฐานสำหรับ app containers (ADR-016 + M4)
|
|
x-hardening: &hardening
|
|
security_opt:
|
|
- no-new-privileges:true
|
|
cap_drop:
|
|
- ALL
|
|
|
|
# Healthcheck HTTP generic (ใส่ test เอง หรือ override)
|
|
x-healthcheck-http: &healthcheck_http_defaults
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
start_period: 30s
|