상세 컨텐츠

본문 제목

파이썬애니웨어(pythonanywhere) 시스템 업그레이드_2/2

클라우드+마이크로서비스

by 김일국 2024. 11. 22. 16:44

본문

우선, 이 자료는 기존 설치된 앱을 기준으로(기술참조: https://kimilguk.tistory.com/836 )설명하고 있다.

지난번에는 피시칩스 이미지에서 최신 하기스 이미지로 시스템을 업그레이드 했다.

실행환경도 python 3.7 에서 python 3.8 로 변경해 보았다.

그러자, 기존 파이썬 앱에 문제가 발생되었다.

그래서, 지난 시간에 앱을 삭제 후 파이썬 가상환경 myvenv 를 생성 후 pip3 로 필요한 앱을 설치하다가 용량 문제로 작업을 멈추었다.

오늘은 파이썬 가상환경 myvenv 생성 까지는 지난시간의 자료를 그대로 따라 하고,

pip3 설치 부터 새로 진행을 하여서 부분적으로나마 성공을 하였다. 작업결과 확인 URL:(아래)

https://kimilguk.pythonanywhere.com/

- 위 작업 결과는 1개의 앱만 가능하게 되었다. 참고로 작업PC의 python 3.8 환경에서 실행할 때 아래 처럼 나온다.(아래)

아래 부터는 어제 실패한 것을 참고하여 다시 성공하는 과정을 나열한다. 

1. 기존 앱 삭제 후, 시스템 이미지를 최신 하기스로 선택 후 실행환경은 python 3.7로 선택했다.(아래)

- 위 작업 후 파이썬 가상환경 myvenv 생성 /home/kimilguk/python-dash/myvenv/ (아래, 지난 시간에 작업 참조)

- cd python-dash (작업 폴더로 이동)
- virtualenv --python=python3.7 myvenv (파이썬 3.7 가상환경을 생성)
- source myvenv/bin/activate (앱 가상환경설정 으로 진입)

2. 파이썬 앱에 필요한 모듈 설치(아래 3개 pip3 사용)

- pip3 install dash_bootstrap_components (대시보드 앱용 부트스트랩 디자인 콤포넌트 사용)
- (참고, 위 설치 시 , pip3 install dash 가 필요없이 의존성으로 dash 모듈이 자동으로 설치된다.)
- pip3 install feedparser (RSS 형식의 데이터를 파싱할 수 있다.)
- (참고, 위 모듈은 구글 외부자료를 가져오는 앱으로 에러가 나서 설치만 하고 실제는 사용하지 않는다.)
- pip3 install pandas
```
pandas 모듈의 주요 기능
- 데이터 불러오기
  CSV, Excel, SQL 데이터베이스, JSON 등 다양한 형식의 데이터를 불러올 수 있다.
- 데이터 조작
  데이터의 필터링, 정렬, 그룹화, 합계, 평균 등 다양한 조작이 가능하다.
- 데이터 시각화
  Matplotlib과 함께 사용하면 다양한 그래프와 차트를 그릴 수 있다.
```

- 설치 성공 화면(아래)

- 판다스 까지 설치한 파일 용량(아래)

3. 웹 앱 생성 하기(아래)

- 가상환경(Virtualenvs)을 사용하기 때문에 매뉴얼 환경 선택(아래)

 

- 위 처럼 앱 생성 후 아래 2가지 작업을 해주어야 합니다.

- WSGI configuration file:/var/www/kimilguk_pythonanywhere_com_wsgi.py 파일 수정( 아래에서 제일 위 붉은 색 사각형 영역)

- Virtualenv 가상환경 폴더경로 추가(아래에서 제일 밑의 붉은 색 사각형 영역)

- 위 WSGI configuration file 파일 내용(아래)

import os
import sys

project_home = u'/home/kimilguk/python-dash'
if project_home not in sys.path:
    sys.path = [project_home] + sys.path
# 최초로 실행할 app.py 파일명만 apps.py 로 변경
from apps import app
application = app.server

Ps. 여기까지 진행하고 아래 [Reload ~ ]버튼으로 컴파일 하면 OK 입니다. ( 결과 URL : https://kimilguk.pythonanywhere.com/ )

관련글 더보기

댓글 영역