From 55e6a563aad239ffaeaa843a5dad4547e80ce1c9 Mon Sep 17 00:00:00 2001 From: admin Date: Mon, 16 Feb 2026 16:57:17 +0700 Subject: [PATCH] 260216:1657 4rd Deploy (Added Registry) --- specs/08-infrastructure/README.md | 1 + specs/08-infrastructure/lcbp3-registry.yml | 58 ++++++++++++++++++++++ 2 files changed, 59 insertions(+) create mode 100644 specs/08-infrastructure/lcbp3-registry.yml diff --git a/specs/08-infrastructure/README.md b/specs/08-infrastructure/README.md index d41e67d..4712299 100644 --- a/specs/08-infrastructure/README.md +++ b/specs/08-infrastructure/README.md @@ -196,6 +196,7 @@ graph TB | ไฟล์ | Application | Services | Path บน ASUSTOR | | :--------------------------------------------------- | :----------------- | :--------------------------------------------------- | :------------------------------ | | [05_monitoring.md](05_monitoring.md) | `lcbp3-monitoring` | `prometheus`, `grafana`, `node-exporter`, `cadvisor` | `/volume1/np-dms/monitoring/` | +| [lcbp3-registry.yml](lcbp3-registry.yml) | `lcbp3-registry` | `registry` | `/volume1/np-dms/registry/` | | [10_gitea_runner.md](10_gitea_runner.md) | `gitea-runner` | `act_runner` | `/volume1/np-dms/gitea-runner/` | | [06_backup.md](06_backup.md) | `lcbp3-backup` | `restic`, Pull-based strategy | `/volume1/np-dms/backup/` | | [07_disaster_recovery.md](07_disaster_recovery.md) | - | DR Plan, RTO/RPO Targets | - | diff --git a/specs/08-infrastructure/lcbp3-registry.yml b/specs/08-infrastructure/lcbp3-registry.yml new file mode 100644 index 0000000..bf8ab0b --- /dev/null +++ b/specs/08-infrastructure/lcbp3-registry.yml @@ -0,0 +1,58 @@ +# File: /volume1/np-dms/registry/docker-compose.yml +# DMS Container v1.8.0: Application name: lcbp3-registry +# Deploy on: ASUSTOR AS5403T +# Services: registry +# ============================================================ +# ⚠️ ข้อกำหนด: +# - ต้องสร้าง Docker Network ก่อน: docker network create lcbp3 +# - Registry ใช้ Port 5000 (domain: registry.np-dms.work) +# - Portainer มีอยู่แล้วบน ASUSTOR (ไม่ต้อง deploy ซ้ำ) +# ============================================================ + +x-restart: &restart_policy + restart: unless-stopped + +x-logging: &default_logging + logging: + driver: 'json-file' + options: + max-size: '10m' + max-file: '5' + +networks: + lcbp3: + external: true + +services: + # ---------------------------------------------------------------- + # 1. Docker Registry (Private Container Image Storage) + # ---------------------------------------------------------------- + registry: + <<: [*restart_policy, *default_logging] + image: registry:2 + container_name: registry + deploy: + resources: + limits: + cpus: '0.5' + memory: 256M + reservations: + cpus: '0.1' + memory: 64M + environment: + TZ: 'Asia/Bangkok' + # --- Storage --- + REGISTRY_STORAGE_DELETE_ENABLED: 'true' + # --- Garbage Collection (ลบ layer ที่ไม่ใช้) --- + REGISTRY_STORAGE_FILESYSTEM_ROOTDIRECTORY: /var/lib/registry + ports: + - '5000:5000' + networks: + - lcbp3 + volumes: + - '/volume1/np-dms/registry/data:/var/lib/registry' + healthcheck: + test: ['CMD', 'wget', '--spider', '-q', 'http://localhost:5000/v2/'] + interval: 30s + timeout: 10s + retries: 3