GitHub

GitHub 연결

GitHub 계정을 DisHost에 연동하고 저장소 기반 배포를 설정하는 방법을 단계별로 안내합니다.

GitHub를 연동하면 다음과 같은 기능을 활용할 수 있습니다.

  1. 저장소 목록에서 클릭 한 번으로 배포: 저장소 URL을 복사할 필요 없이 내 계정의 저장소 목록에서 바로 봇을 생성합니다.
  2. Push 시 자동 재배포: 코드를 Git Push하기만 하면 DisHost가 변경 사항을 감지해 봇을 자동으로 재시작합니다.

사전 준비물

  • DisHost 계정 (디스코드 로그인)
  • GitHub 계정
  • 배포할 코드가 포함된 GitHub 저장소

Step 1: GitHub 계정 연동

  1. 대시보드의 왼쪽 사이드바에서 설정으로 이동합니다.
  2. 상단의 Connect GitHub 버튼을 클릭합니다.
  3. GitHub 인증 팝업이 뜨면 Authorize를 클릭합니다.
  4. 연동이 완료되면 설정 페이지에 본인의 GitHub 프로필이 표시됩니다.
@내아이디
✓ Verified

참고

연동을 해제하고 싶을 때는 설정 페이지의연결 해제 버튼을 누르면 언제든 해제할 수 있습니다.


Step 2: GitHub App 설치

DisHost가 저장소의 코드를 읽고 Push 웹훅 이벤트를 수신할 수 있도록 GitHub App을 설치합니다.

  1. 설정 페이지 하단의 Install GitHub App 버튼을 클릭합니다.
  2. GitHub 화면에서 접근을 허용할 저장소를 선택합니다:
    • All repositories: 계정 내 모든 저장소 허용
    • Only select repositories: 배포할 봇 저장소만 선별 허용
  3. Install을 클릭하여 설치를 완료합니다.

참고

GitHub App은 저장소 코드 읽기 권한만 요청하며, 코드를 임의로 변경하거나 다른 권한에 접근하지 않습니다.


Step 3: 저장소에서 봇 생성 및 배포

  1. 대시보드에서 봇 생성을 클릭합니다.
  2. Git으로 불러오기를 선택합니다.
  3. 목록에서 배포할 저장소를 선택합니다 (공개/비공개 저장소 모두 지원).
  4. Push 시 자동 재배포 옵션을 필요에 따라 체크합니다.
  5. 런타임 언어를 확인한 후 생성하기를 누릅니다.

Step 4: 자동 배포 동작 확인

Push 시 자동 재배포를 켜 두면 로컬에서 코드를 수정한 후 다음과 같이 배포가 이루어집니다.

git add .
git commit -m "기능 업데이트"
git push origin main

내부 동작 과정:

  1. GitHub로 커밋이 Push됩니다.
  2. GitHub가 DisHost로 웹훅 이벤트를 전달합니다.
  3. DisHost 배포 큐가 작동하여 최신 코드를 내려받습니다.
  4. 패키지 변경 사항이 있다면 의존성을 설치하고 봇을 재부팅합니다.

문제 해결 FAQ

"redirect_uri is not associated with this application" 오류가 나타납니다.

  • GitHub App의 Callback URL 설정 문제입니다. 지속될 경우 디스호스트 지원 채널로 문의해 주세요.

저장소 목록이 비어 있습니다.

  1. GitHub Applications 페이지에서 DisHost App에 해당 저장소의 접근 권한이 부여되어 있는지 확인해 주세요.
  2. 대시보드를 새로고침하거나 다시 로그인해 보세요.
  3. 설정 페이지에서 GitHub 연동을 해제한 후 다시 연결해 보세요.

비공개(Private) 저장소도 지원하나요?

  • 네, GitHub App 설치 시 해당 비공개 저장소를 포함해 두시면 문제없이 접근하여 배포할 수 있습니다.