From ac75dcce7e1686f051b6e7fe8415f1d89e5bd287 Mon Sep 17 00:00:00 2001 From: sm4640 Date: Mon, 19 Jan 2026 11:58:44 +0900 Subject: [PATCH] =?UTF-8?q?Docs:=20[main]=20compose.apps.yml=20=ED=8C=8C?= =?UTF-8?q?=EC=9D=BC=EC=97=90=20=EB=8C=80=ED=95=9C=20=EC=84=A4=EB=AA=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 +- docs/DEVELOPMENT.md | 4 ++-- docs/OPERATIONS.md | 9 ++++----- 3 files changed, 7 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index feccddb..3b2a594 100644 --- a/README.md +++ b/README.md @@ -98,7 +98,7 @@ curl -s http://localhost:8000/ | cat 1) (수동) checkout: Gitea 서브패스(`/gitea`)를 고려해 `git init` + `git fetch`로 소스 가져옴 2) Docker Hub 로그인 3) 이미지 빌드/푸시: `${DOCKERHUB_USERNAME}/baekjoon-bot:latest` - 4) 서버 배포: 서버에 존재하는 compose 파일(`/nkeysworld/compose.yml`)로 `pull/up -d` 수행 + 4) 서버 배포: 서버에 존재하는 app 관련 compose 파일(`/nkeysworld/compose.apps.yml`)로 `pull/up -d` 수행 5) Discord Webhook으로 성공/실패 알림 전송 ### Required Secrets diff --git a/docs/DEVELOPMENT.md b/docs/DEVELOPMENT.md index 7b2ebad..adcac57 100644 --- a/docs/DEVELOPMENT.md +++ b/docs/DEVELOPMENT.md @@ -123,8 +123,8 @@ docker push "${IMAGE}" ### Deploy - 워크플로우 배포는 레포 내부 파일이 아닌 서버(또는 self-hosted runner)에 존재하는 compose 파일을 사용합니다. ```bash -docker compose -f /nkeysworld/compose.yml pull baekjoon-bot -docker compose -f /nkeysworld/compose.yml up -d baekjoon-bot +docker compose -f /nkeysworld/compose.apps.yml pull baekjoon-bot +docker compose -f /nkeysworld/compose.apps.yml up -d baekjoon-bot docker image prune -f ``` diff --git a/docs/OPERATIONS.md b/docs/OPERATIONS.md index 11fefb0..61c33a3 100644 --- a/docs/OPERATIONS.md +++ b/docs/OPERATIONS.md @@ -5,7 +5,6 @@ - Dockerfile 기반 단일 컨테이너 실행 (`dockerfile`) - (참고) 로컬에서 Uvicorn 직접 실행 -> Docker Compose / Kubernetes / Terraform 관련 파일은 레포에 없습니다. ## Production Checklist - Secrets/ENV: @@ -95,9 +94,9 @@ docker logs -f baekjoon-bot - (기존) Dockerfile 기반 단일 컨테이너 실행: `dockerfile` - (추가) Gitea Actions 기반 CI/CD: `.gitea/workflows/cicd.yml` - Docker Hub로 이미지 푸시 후, - - 러너/서버에서 `docker compose -f /nkeysworld/compose.yml pull/up`으로 배포 + - 러너/서버에서 `docker compose -f /nkeysworld/compose.apps.yml pull/up`으로 배포 -> 참고: 레포에는 Docker Compose 파일이 포함되어 있지 않습니다. CI/CD 배포는 서버에 존재하는 `/nkeysworld/compose.yml`을 사용합니다. +> 참고: 레포에는 Docker Compose 파일이 포함되어 있지 않습니다. CI/CD 배포는 서버에 존재하는 `/nkeysworld/compose.apps.yml`을 사용합니다. ## Deployment ### CI/CD (Gitea Actions) @@ -110,7 +109,7 @@ Workflow: `.gitea/workflows/cicd.yml` - (1) Manual checkout (Gitea `/gitea` 서브패스 고려) - (2) Docker Hub 로그인 - (3) 이미지 빌드/푸시: `${DOCKERHUB_USERNAME}/baekjoon-bot:latest` -- (4) 배포: `docker compose -f /nkeysworld/compose.yml pull baekjoon-bot` + `up -d baekjoon-bot` +- (4) 배포: `docker compose -f /nkeysworld/compose.apps.yml pull baekjoon-bot` + `up -d baekjoon-bot` - (5) 정리: `docker image prune -f` - (6) 알림: Discord webhook (성공/실패 모두 전송) @@ -122,7 +121,7 @@ Workflow: `.gitea/workflows/cicd.yml` #### Server/Runner Prerequisites - `docker` 실행 가능 - `docker compose` 실행 가능(워크플로우에 설치 보완 단계가 있으나, 기본적으로 compose가 동작해야 함) -- `/nkeysworld/compose.yml` 파일이 존재해야 함 +- `/nkeysworld/compose.apps.yml` 파일이 존재해야 함 - compose 내 서비스명이 `baekjoon-bot` 이어야 함(워크플로우가 해당 서비스만 `pull/up` 수행) #### Rollback (workflow 기준)