728x90
반응형

전체 글 193

Flask ORM으로 모델 생성하고 데이터 처리하기

ORM(Object Relational Mapping) ORM이란 객체와 관계형 데이터베이스의 데이터를 자동으로 매핑해주는 것을 말한다. 즉, 객체 지향 프로그래밍의 클래스를 관계형 데이터베이스이 테이블에 매핑해준다. ORM을 이용하면 데이터베이스 종류에 상관없이 일관된 코드를 유지할 수 있어서 프로그램을 유지 보수하기 편리하다. 또한 내부에서 안전한 SQL 쿼리를 자동으로 생성해 주므로 개발자가 달라도 통일된 쿼리를 작성할 수 있고 오류 발생률도 줄일 수 있다. Flask ORM 라이브러리 사용하기 SQLAlchemy는 가장 많이 사용하는 파이썬 ORM 라이브러리이다. 파이썬 모델을 이용해 테이블을 생성하고, 칼럼을 추가하는 등의 작업을 위해 Flask-migrate 라이브러리도 사용할 것이다. 아래와..

Web/Flask 2022.01.10

Flask 블루프린트(Blueprint)로 라우트 함수 관리하기

라우트 함수란? flask에서는 @app.route('/')와 같이 애너테이션을 통해 url을 매핑한다. 이때 @app.route와 같은 애너테이션으로 매핑되는 함수를 라우트 함수라고 한다. 블루프린트(Blueprint)란? Flask는 Django와 달리 url들을 파일 단위에서 따로 관리하지 않고, controller의 endpoint 함수에 데코레이터를 붙여서 관리한다. 라우트함수들은 기능이 필요할 때마다 계속 추가되어야하기 때문에 create_app 함수내에 함수가 많을 경우 번거로워질 수 있다. 이때 블루프린트(Blueprint)라는 클래스를 사용하면 라우트 함수들을 보다 더 구조적으로 관리할 수 있다. Blueprint 사용하기 C:\프로젝트 경로\views\main_views.py에서 임의로..

Web/Flask 2022.01.07

WSL2를 활용해 Windows에서 리눅스 사용하기

WSL2를 이용하면 Linux 이미지를 다운 받고, 가상머신에 Linux를 설치하는 과정 없이 윈도우에서 간편하게 Linux Shell을 사용할 수 있다. 따라서 WSL2를 활용해 Windows에서 리눅스 사용하는 방법에 대해 정리하려고 한다. WSL란? Windows Subsystem for Linux의 약자로서, Windows10 운영체제에서 리눅스 운영체제의 쉘, 시스템을 사용할 수 있도록 지원해주는 기능이다. 개발자가 기존 가상 머신(virtual machine)의 오버헤드 또는 듀얼 부팅 설정 없이 대부분의 명령줄 도구, 유틀리티 및 애플리케이션을 비롯한 GNU/Linux 환경을 수정하지 않고 Windows에서 직접 실행할 수 있다. WSL2란? WSL2는 1과 다르게 Hyper-V를 사용해서 ..

Linux/Ubuntu 2021.12.03

Ubuntu에 Docker 설치 및 Portainer 구축하여 쉽게 관리하기

설치 환경: AWS EC2 Ubuntu 20.04 LTS Server Docker 설치하기 설치 전 apt update && apt upgrade를 기본적으로 진행해준다. apt update & apt upgrade 패키지 설치 sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common GPG Key 인증 curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - 아래 사진과 같이 결과가 나오면 정상이다. docker repository 등록 sudo add-apt-repository \ "deb [arch..

Docker 2021.10.08

Docker를 활용한 Filebeat, ELK stack 설치 및 Suricata 연동

Docker를 활용한 Elasticsearch 설치 #elasticsearch image 다운 docker pull docker.elastic.co/elasticsearch/elasticsearch:7.15.0 #다운된 이미지 확인 docker images #elasticsearch container구동 docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:7.15.0 #프로세스 확인 docker ps -a #포트확인 netstat -anp | grep LIST | grep docker #설치테스트 확인 curl..

ETC/ELK 2021.10.08

Docker를 활용한 filebeat, ELK stack 설치하기 (AWS EC2 Ubuntu 20.04)

설치 환경: AWS EC2 Ubuntu 20.04 1. ELK stack 설치 https://github.com/deviantony/docker-elk GitHub - deviantony/docker-elk: The Elastic stack (ELK) powered by Docker and Compose. The Elastic stack (ELK) powered by Docker and Compose. - GitHub - deviantony/docker-elk: The Elastic stack (ELK) powered by Docker and Compose. github.com 1) 호스트 커널의 vm.max_map_count 설정 먼저, 프로덕션 환경에서 무리 없이 사용하기 위해 아래와 같이 vm.ma..

ETC/ELK 2021.10.07

윈도우에서 도커(Docker) 설치하기 (Windows 10 Home 포함)

1. Docker란? Docker는 애플리케이션을 신속하게 구축, 테스트 및 배포할 수 있는 소프트웨어 플랫폼이다. Docker는 소프트웨어를 컨테이너라는 표준화 된 유닛으로 패키징하며, 이 컨테이너에는 라이브러리, 시스템 도구, 코드, 런타임 등 소프트웨어를 실행하는 데 필요한 모든 것이 포함되어 있다. Docker를 사용하면 환경에 구애받지 않고 애플리케이션을 신속하게 배포 및 확장할 수 있으며 코드가 문제 없이 실행될 것임을 확신할 수 있다. 2. Windows 10에서 도커(Docker) 설치하기 1) Windows 버전 확인 먼저 자신의 컴퓨터의 Windows 버전을 확인한다. 검색창에 winver을 검색해서 실행하면 Windows 버전을 확인할 수 있다. Docker를 사용할 때 Windows..

Docker 2021.09.29

AWS ElastiCache Redis 생성 및 Python 연동 방법 알아보기(feat. Pycharm)

1. ElastiCache Redis 란? ElastiCache는 클라우드에서 인메모리 데이터 스토어 또는 캐시를 손쉽게 배포, 운영 및 확장할 수 있게 해주는 웹 서비스이다. ElastiCache는 클러스터 엔진으로 Memcached와 Redis를 지원한다. Redis는 인메모리 DB이다. RDBMS가 파일에 데이터를 저장하는 것에 비해 인메모리 DB는 메모리에 데이터를 저장하기 때문에 RDBMS에 비해 속도가 빠르다. RDBMS의 부하를 덜어주기 위해 Redis를 많이 사용한다. Redis는 String, Hash, List, Set, Sorted Set 등 다양한 데이터 형식을 제공하는 키-값(Key-Value) 데이터 저장소라고 할 수 있다. 2. Memcached와 Redis 비교 Memcach..

AWS/실습 기록 2021.09.24

AWS RDS를 사용해 MySQL과 Python 연동 (feat. Pycharm)

먼저 아래 게시물을 참고해 AWS RDS 데이터베이스를 생성한다. https://daeunnniii.tistory.com/152 AWS RDS 데이터베이스 생성과 설정 방법 RDS란? RDS는 AWS에서 관계형 데이터베이스를 더욱 쉽게 설정, 운영 및 확장할 수 있도록 지원하는 웹 서비스이다. 직접 운영하기 까다로운 RDBMS를 관리해준다. 비용은 조금 들 수 있지만 서비스 운 daeunnniii.tistory.com 1. Pycharm에서 RDS 데이터베이스 접속 먼저 오른쪽 Database 버튼을 눌러 다음과 같이 MySQL을 선택 RDS에서 생성한 데이터베이스를 클릭하면 엔드포인트를 확인할 수 있다. 그 부분을 복사해서 Pycharm의 Host 부분에 입력해준다. Name은 원하는대로 이름을 입력하..

AWS/실습 기록 2021.09.24

AWS RDS 데이터베이스 생성과 설정 방법

RDS란? RDS는 AWS에서 관계형 데이터베이스를 더욱 쉽게 설정, 운영 및 확장할 수 있도록 지원하는 웹 서비스이다. 직접 운영하기 까다로운 RDBMS를 관리해준다. 비용은 조금 들 수 있지만 서비스 운영 시 개발에만 집중하게 해준다는 장점이 있다. RDS 더 알아보기: https://docs.aws.amazon.com/rds/?id=docs_gateway RDS 생성하기 먼저 RDS 서비스에 들어간다. "데이터베이스 생성"을 클릭한다. 먼저 데이터베이스 생성 방식을 선택한다. 표준생성은 사용자가 구성을 직접 설정해 보는 방법이고, 손쉬운 생성은 권장하는 구성을 사용하는 방법이다. 아래 엔진 옵션은 Amazon Aurora를 사용하면 좋겠지만, 프리티어 적용이 안되므로 MySQL을 선택하였다. 그다음..

AWS/실습 기록 2021.09.23
728x90
반응형