I'm FanJae.

[EA FC Pro club Draft Bot] 7. 봇 호스팅 (GCP 무료 호스팅 이용) 본문

Toy Project/EA FC Pro club Draft Bot [Python]

[EA FC Pro club Draft Bot] 7. 봇 호스팅 (GCP 무료 호스팅 이용)

FanJae 2024. 9. 20. 18:20

※ 초기 결제 정보를 설정하는 부분은 임의 생략하였다.

※ 구글 클라우드 플랫폼 관련 키워드를 검색하면 어렵지 않게 찾을 수 있다.

 

1. 호스팅이란?

- 서버 컴퓨터의 전체 또는 일정 공간을 이용할 수 있도록 해주는 서비스를 의미한다.

 

1-1. GCP(Google Cloud Platform)

- 구글에서 제공하는 클라우드 컴퓨팅 플랫폼이다.

- 자체적으로 여러 가지 컴퓨팅 환경을 제공하고 있지만, 현재 내가 사용하는 디스코드 봇은 사용자가 많지 않다.

- 호스팅을 하지 않는다면, 서버를 위해서 매번 전원을 켜둬야한다. 

- 따라서, GCP가 제공하는 무료 등급을 사용해서 디스코드 봇을 올려두고 사용하려고 한다.

 

1-2.  무료 티어 확인

 

1-3. 새 VM 인스턴스 생성

- 다음과 같이 설정한다.

- 부팅 디스크는 Windows로 할 경우, 비용이 발생하며 크기가 기본 10GB이므로, 30GB로 바꿔준다.

GCP가 제공하는 무료 서버의 정보는 추후에 변동될 수 있다. 따라서 아래 링크를 통해 반드시 찾아보고 해야한다.

링크 : https://cloud.google.com/free/docs/free-cloud-features?hl=ko (2024.09.20)

 

1-4. 인스턴스 생성 확인 및 초기 셋팅

- Ubuntu OS를 기준으로 아래와 같이 명령어를 입력한다.

sudo apt update
sudo apt install python3
sudo apt install python3-pip

- sudo apt update : 시스템의 패키지 목록 업데이트

- sudo apt install python3  : Python 3 설치

- sudo apt install python3-pip : Python 3의 패키지 관리자 pip 설치

 

1-5. git clone 에러

remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.
remote: Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ for more information.

- password 입력 방식 인증은 더 이상 지원하지 않으므로, Access Token을 생성해야 한다고 알려준다.

 

- 로그인 이후 오른쪽 위 프로필 창을 눌러, Settings에 들어가면 맨 왼쪽 아래에 Developer settings를 확인할 수 있다.

- Developer settings에 들어가면 Personal access tokens 창이 뜬다. 여기서 Tokens를 누른다.

- Geneate new token (classic)을 눌러서 새로운 Access Token을 생성해준다.

 

- Access Token에 여러 가지 권한을 부여할 수 있다. Repo 관련 권한을 넣어주고 Generate token을 누른다.

- 앞서 비밀번호 입력하던 곳에 생성된 Access Token 값을 입력해주면 된다.

※ Access Token은 한번 발급되면 더 이상 확인할 수 없으니 어디 저장해두거나, 1회성으로 사용해야 한다.

 

1-5. 필요 패키지 설치 및 실행

pip3 install discord
pip3 install python-dotenv

- 패키지 설치를 진행한 이후에 실행하면 정상 실행을 확인 가능하다.

 

1-6. tmux 설치 및 봇 재실행

- Linux에서 기존 터미널 창을 분할해 사용할 수 있도록 하는 터미널 멀티플렉서이다.

- 여러 별도의 터미널 세션에 액세스 할 수 있다.

sudo apt-get install tmux

- 설치 후 tmux를 입력하면 별도의 세션이 생성된다.

- 이 세션 안에서 명령어를 재실행하면 터미널을 닫아도 봇은 계속 작동한다.

Comments