파이썬, 플라스크, 몽고디비 설치 | 지도 기반 SNS 프로젝트 1(환경 및 세팅) [python, flask, mongodb]

(코딩 in 홈카페)

본 프로젝트는 @5linesys 와 함께합니다.

https://oseonsik.com/

해당 프로젝트는 위치기입에 강제성을 띄우는 SNS 제작 프로젝트이다.

서비스 런칭이 목표가 아닌 전역 후 코딩 감을 잡고 실제 서비스급 기술스택을 사용하여 프로젝트를 진행하는 것이 목표이다.

python + 플라스크 기반 restfulapi 제작

환경 정보

서버 : azure 가상머신

운영체제 : ubuntu 18.04 LTS

데이터베이스 : mongodb

통신 프로토콜 : HTTP/HTTPS

보안서버 : Let’s encrypt

python3 + 플라스크 설치

root@paperlee:~# apt install python3

root@paperlee:~# apt install python3-pip

root@paperlee:~# pip3 install flask

플라스크 Hello-world작성 (map.py)

from flask import Flask

  

app = Flask(__name__)

@app.route('/')

def hello_flask():

    return "Hello, world!"

if __name__ == "__main__":

    app.run(host="0.0.0.0", port="5000")

 

run

python3 map.py

플라스크 참고

https://www.fun-coding.org/flask_basic-2.html

https://snacky.tistory.com/5

파이참 SFTP + 원격 인터프린터 설정

파이참에서 원격 인터프린터를 설정, SFTP 동기화를 해두면 실시간으로 서버에 public 하게 게시할 수 있다.

https://pytogether.tistory.com/1

MongoDB

몽고디비는 NoSQL 이다. RDMS의 경우 테이블 구조와 스키마를 짜야하고 복잡할 수 있다. 하지만 스키마를 효율적으로 짜두면 극강의 효율을 낼 수 있다.

하지만 몽고디비는 json형태로 통채로 저장하는 방식이기에 탐색 속도가 느리지만 직관적이고 사용하기 쉬워보인다.

이에 따라 기존 RDMS 에서 쓰던 명칭을 아래처럼 치완해서 생각하면 될 듯 하다.

데이터베이스 <=> 데이터베이스 (동일)

테이블 <=> 컬렉션

행<=>문서(Document)

컬럼<=>키/필드 (key / field)

 

좀 더 자세한 내용 : https://velopert.com/436

MongoDB 설치

https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/#install-mongodb-community-edition-using-deb-packages

MongoDB 패키지 추가

wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -
sudo apt-get install gnupg
wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -

#ubuntu 18.04
echo "deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.2.list
#ubuntu 16.04
echo "deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/4.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.2.list

패키지 업데이트 및 설치

sudo apt-get update

echo "mongodb-org hold" | sudo dpkg --set-selections
echo "mongodb-org-server hold" | sudo dpkg --set-selections
echo "mongodb-org-shell hold" | sudo dpkg --set-selections
echo "mongodb-org-mongos hold" | sudo dpkg --set-selections
echo "mongodb-org-tools hold" | sudo dpkg --set-selections

 

sudo apt-get update

sudo apt-get install mongodb-org

서비스 시작 & 상태확인

sudo service mongodb start
sudo service mongodb status

 

“파이썬, 플라스크, 몽고디비 설치 | 지도 기반 SNS 프로젝트 1(환경 및 세팅) [python, flask, mongodb]”에 대한 3 댓글

  1. Avatar 오선식 댓글:

    응원합니다 화이팅

  2. Avatar 길당 김태훈 댓글:

    이번 프로젝트도 대성공을 거두길 기원합니다.

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다