박카스
박카스
🎻 루키 파트너
🚀 SNS 챌린지 달성자

[실습 가이드] GCP 서버 구축 및 AI 봇 배포 (카톡블로그자동화 Step1)

1단계: Google Cloud Platform (GCP) 서버 생성

가장 먼저 클라우드 서버(VM 인스턴스)를 생성합니다.

  1. GCP 콘솔 접속: Google Cloud Console에 로그인하고 Compute Engine > VM 인스턴스로 이동합니다.

  2. 인스턴스 만들기: 상단의 [인스턴스 만들기] 버튼을 클릭합니다.

  3. 세부 설정 입력:

    • 이름: 원하는 식별 이름 입력 (예: instance-2026...).

    • 리전: asia-northeast3 (서울) 선택 (지연 시간 최소화).

    • 머신 구성: E2 시리즈 선택 후 e2-small (공유 코어, 메모리 2GB) 선택 (비용 절감형).

  4. 생성 완료: 하단의 [만들기] 버튼을 눌러 서버를 생성합니다. 잠시 후 초록색 체크 표시(✅)와 함께 실행 상태가 됩니다.


2단계: 서버 접속 및 파일 업로드

생성된 서버에 접속하여 파이썬 코드를 업로드합니다.

  1. SSH 접속: 생성된 인스턴스 목록 우측의 [SSH] 버튼을 클릭하여 웹 브라우저 터미널을 엽니다.

    한국어 텍스트가 포함된 웹페이지의 스크린샷
  2. 파일 업로드:

    • SSH 창 우측 상단의 [파일 업로드] 버튼을 클릭합니다.

    • 내 컴퓨터에 있는 main_summary.py 파일을 선택하여 업로드합니다.

      • 앗. main_summary.py 파일이 없네요? 그럼 main_summary.txt 파일을 열고, 다른이름으로 저장-> 파일형식:모든 파일, 파일이름 마지막 확장자명을 py로 바꾼후 저장해줍니다.

  3. 확인: 터미널에 ls *.py를 입력하여 파일이 잘 들어왔는지 확인합니다.


3단계: 시스템 필수 패키지 설치 (Root 환경)

리눅스 시스템 자체에 필요한 프로그램(크롬, FFmpeg 등)을 설치합니다.

Bash

# 1. 패키지 목록 업데이트
sudo apt-get update

# 2. FFmpeg 설치 (유튜브 오디오 처리용)
sudo apt-get install -y ffmpeg

# 3. 구글 크롬 설치 (셀레니움 크롤링용)
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo apt install -y ./google-chrome-stable_current_amd64.deb


4단계: 파이썬 가상 환경(venv) 구성

시스템 파이썬과 충돌을 방지하기 위해 독립된 가상 환경을 만듭니다.

Bash

# 1. 가상 환경 모듈 설치 (혹시 없을 경우 대비)
sudo apt install -y python3-venv python3-full

# 2. 'myenv'라는 이름의 가상 환경 생성
python3 -m venv myenv

# 3. 가상 환경 활성화 (★서버 접속 시마다 필수)
source myenv/bin/activate

(터미널 프롬프트 앞에 (myenv)가 표시되면 성공입니다)


5단계: 라이브러리 설치 및 오류 해결

필요한 파이썬 라이브러리를 설치합니다. 문서 내용에 따라 lxml 관련 오류 패치도 함께 진행합니다.

Bash

# 1. 메인 라이브러리 일괄 설치
pip install fastapi uvicorn requests newspaper3k readability-lxml beautifulsoup4 pydantic pytube google-generativeai youtube-transcript-api yt-dlp selenium webdriver-manager

# 2. [중요] lxml html_clean 오류 해결 패치
# (newspaper3k 실행 시 발생하는 ImportError 방지)
pip install lxml_html_clean

6단계: 서버 실행 (무중단 배포)

터미널을 꺼도 서버가 계속 돌아가도록 설정합니다.

  1. 백그라운드 실행 명령어 (nohup):

    Bash

    nohup uvicorn main_summary:app --host 0.0.0.0 --port 8000 --reload > output.log 2>&1 &
    
    • main_summary: 업로드한 파이썬 파일명 (.py 제외)

    • > output.log: 실행 기록을 output.log 파일에 저장

  2. 실행 확인 (로그 모니터링):

    Bash

    tail -f output.log
    
    • 화면에 Application startup complete. 문구가 뜨면 성공적으로 배포된 것입니다.

✅ 관리 팁

  • 로그 확인 종료: Ctrl + C

  • 서버 중지: ps -ef | grep uvicorn으로 PID 확인 후 kill -9 [PID]

다음 글에서는 모바일에 설치하는 메신저봇에 대한 가이드를 안내드리겠습니다.

감사합니다:))

6

뉴스레터 무료 구독

👉 이 게시글도 읽어보세요