make-quant-py/DEPLOYMENT.md
Ayuriel 1a2a29aaf2
Some checks failed
Docker Build and Deploy / build-and-push (push) Successful in 1m9s
Docker Build and Deploy / deploy (push) Failing after 8s
feat: 배포 구성
2025-03-31 12:35:54 +09:00

2.5 KiB

배포 가이드

이 문서는 Gitea 패키지 레지스트리를 사용하여 Docker 이미지를 배포하는 방법을 설명합니다.

1. Gitea 저장소 설정

저장소 시크릿 설정

Gitea 저장소 설정에서 다음 시크릿을 추가해야 합니다:

  1. GITEA_REGISTRY_URL - Gitea 레지스트리 URL (예: gitea.example.com)
  2. GITEA_USERNAME - Gitea 사용자 이름
  3. GITEA_PASSWORD - Gitea 비밀번호 또는 액세스 토큰
  4. DEPLOY_HOST - 배포 서버 호스트 (예: 123.456.789.0)
  5. DEPLOY_USER - 배포 서버 SSH 사용자 (예: deployer)
  6. DEPLOY_SSH_KEY - 배포 서버 SSH 개인 키
  7. DEPLOYMENT_PATH - 배포 서버의 프로젝트 경로 (예: /home/deployer/quant-manager)

시크릿 추가 방법:

  1. Gitea에서 저장소로 이동
  2. 설정 > 시크릿 메뉴 선택
  3. "새 시크릿 추가" 버튼 클릭
  4. 각 시크릿의 이름과 값 입력

2. 서버 설정

배포 서버 준비

배포 서버에서 다음 작업을 수행해야 합니다:

  1. Docker 설치
sudo apt update
sudo apt install docker.io docker-compose -y
sudo systemctl enable docker
sudo systemctl start docker
  1. 배포 디렉터리 생성
mkdir -p /path/to/deployment
cd /path/to/deployment
  1. 환경 파일 생성
# .env 파일 생성
cat > .env << EOF
GITEA_REGISTRY_URL=gitea.example.com
GITEA_USERNAME=your-username
GITEA_PASSWORD=your-password
EOF
  1. Docker Compose 파일 복사 프로젝트의 docker-compose.yml 파일을 서버의 배포 디렉터리에 복사합니다.

3. 배포 프로세스

자동 배포

  1. master 브랜치에 변경 사항을 푸시하면 Gitea Actions 워크플로우가 트리거됩니다.
  2. 워크플로우는 Docker 이미지를 빌드하고 레지스트리에 푸시합니다.
  3. 그런 다음 SSH를 통해 서버에 연결하여 최신 이미지를 가져오고 배포합니다.

수동 배포

서버에서 직접 배포하려면:

  1. 서버의 배포 디렉터리로 이동
cd /path/to/deployment
  1. 배포 스크립트 실행
./deploy.sh

4. 문제 해결

일반적인 문제

  1. 인증 오류: Gitea 사용자 이름과 비밀번호가 올바른지 확인하세요.
  2. 이미지 가져오기 실패: 레지스트리 URL이 올바른지 확인하세요.
  3. 배포 실패: 서버에 Docker와 Docker Compose가 설치되어 있고 사용자에게 필요한 권한이 있는지 확인하세요.

로그를 확인하려면:

docker logs quant-manager