acquire-core-x/docker/docker-compose.yml
hyeongwoo-choi 5c819239ad 업무화면 포털 + HTTP→tpcall 게이트웨이 (검증용 화면 계층)
- app/src/clients/acq_httpgw.c: C 경량 HTTP 게이트웨이(:8090, libatmiclt만 링크)
  /api/call?svc=..&FLD=.. → UBF(CBchg) → (옵션 XA tpbegin/tpcommit) tpcall → JSON
  레거시 화면(Xplatform)→Webtier→Tuxedo 구조의 Webtier 대응
- app/ui/index.html: Xplatform풍 한국어 업무포털 (좌측 메뉴트리·폼·결과그리드·거래저널)
  화면 9종: 매입접수(XA체인)/상태조회/가맹점집계/한도조회/MDR/잔액검증/일마감/가맹점/Luhn
  + 333 서비스 자유호출 화면
- entrypoint: 게이트웨이 자동 기동, compose: 8090 포트 노출
- 검증: HTML 서빙, ACQUIRE 체인 HTTP 호출 → XA 커밋(purchase status=S), Luhn T_RC=0,
  pg_prepared_xacts=0

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 00:29:05 +00:00

47 lines
1.2 KiB
YAML

name: acquire-core-x
services:
db:
image: postgres:15
environment:
POSTGRES_DB: acq
POSTGRES_USER: acq
POSTGRES_PASSWORD: acq
# XA / 2-phase commit needs prepared transactions enabled.
command: ["-c", "max_prepared_transactions=100"]
volumes:
- ../db/schema.d:/docker-entrypoint-initdb.d:ro
healthcheck:
test: ["CMD-SHELL", "pg_isready -U acq -d acq"]
interval: 3s
timeout: 3s
retries: 20
networks:
- acqnet
app:
image: acquire-x/endurox:7.0.12
depends_on:
db:
condition: service_healthy
# Enduro/X posix-mqueue runtime requirements (ndrxd won't boot otherwise).
sysctls:
fs.mqueue.msg_max: "512"
fs.mqueue.msgsize_max: "65536"
# ~330 서비스 = 330+ POSIX 큐. 기본 queues_max(256) 초과 → 11 모듈서버 부팅 실패하므로 상향.
fs.mqueue.queues_max: "8192"
ulimits:
msgqueue: 2147483648
nofile: 65536
ports:
- "8090:8090" # 업무화면 게이트웨이 (브라우저 → tpcall)
volumes:
- ../app:/app
working_dir: /app
entrypoint: ["/bin/bash", "/app/entrypoint.sh"]
networks:
- acqnet
networks:
acqnet:
driver: bridge