이 저장소에는 FARM 솔루션 스택에서 실행되는 전체 스택 웹 애플리케이션 템플릿이 포함되어 있습니다.
FARM 스택은 다음과 같은 주목할 만한 변경 사항이 포함된 LAMP 스택의 확장입니다.
Flask는 웹 UI와 웹 백엔드/데이터베이스 간에 통신할 수 있는 웹 API/미들웨어를 작성하는 데 사용됩니다. 이는 전체 스택 애플리케이션의 조각들을 하나로 묶는 전체 애플리케이션의 핵심입니다.
이 특정 템플릿은 ORM을 사용하지 않고 대신 pymysql
모듈을 사용합니다. 이는 개발자가 SQL 쿼리를 작성해야 하지만 데이터베이스에서 실행하는 데 필요한 쿼리의 복잡성을 극대화할 수 있음을 의미합니다.
AWS는 애플리케이션을 호스팅할 수 있는 클라우드 서비스입니다. 우리는 다음 서비스에서 전체 소프트웨어 스택을 호스팅할 수 있습니다.
이는 개발자가 모든 것을 하나의 플랫폼에 유지하고 DevOps/IT 작업을 최소화할 수 있음을 의미합니다.
React는 웹 UI가 실행되는 프레임워크입니다. React 애플리케이션은 NodeJS를 사용하여 AWS Lambda에서 실행될 수도 있습니다.
이 템플릿은 JavaScript/JSX를 사용하지만 TypeScript도 사용할 수 있습니다.
MySQL은 웹 백엔드가 사용하는 관계형 데이터베이스입니다. RDS 서비스를 통해 AWS에서 호스팅할 수도 있습니다.
이 웹 애플리케이션을 실행하려면 다음을 수행해야 합니다.
db/
의 스키마를 사용하여 로컬 MySQL 인스턴스 설정MySQL 인스턴스를 설정하려면 다음 단계를 따르세요.
mysql
사용하는 것입니다.sample.sql
실행합니다. SampleInventory
라는 스키마를 생성한 다음 Inventory
라는 테이블을 초기화합니다. Flask API의 코드베이스는 api/
디렉터리에서 찾을 수 있습니다.
virtualenv farm-stack
사용하여 Python 가상 환경을 생성합니다.source farm-stack/bin/activate
로 활성화하세요.api/
로 이동하고 pip3 install -r requirements.txt
실행하여 API에 필요한 모든 Python 모듈을 설치합니다.api/
디렉터리에서 dbcreds.py
열고 필요에 따라 데이터베이스 자격 증명을 편집합니다. python3 app.py
실행하여 http://localhost:8080
에서 API를 실행합니다. React UI의 코드베이스는 ui/
디렉터리에서 찾을 수 있습니다. 이 템플릿은 yarn
패키지 관리자로 사용합니다. 개발자가 새 모듈을 추가할 때 npm
과 같은 다른 패키지 관리자를 혼합하지 않는 것이 중요합니다.
이 템플릿에는 react-bootstrap
과 같은 패키지가 없습니다.
yarn install
실행하여 필요한 모든 종속성을 설치합니다. yarn start
실행하세요.http://localhost:3000
으로 이동합니다.