전체보기

    36. 아마존 웹 서비스로 배포!

    36. 아마존 웹 서비스로 배포!

    ● AWS Lightsail AWS Lightsail 시작 AWS에서는 여러가지 서비스를 제공하지만 이번 프로젝트에서는 Lightsail을 사용한다. 가상 서버를 의미하는 인스턴스를 만든다. Linux 선택 후 Ubuntu도 선택한다. 아래를 보면 요금 별로 메모리, CPU, 저장용량, 전송이 다른데 지금의 프로젝트는 작은 blog 이므로 가장 낮은 요금제를 선택한 후 인스턴스의 이름을 짓는것으로 인스턴스를 만든다. 첫 3개월은 무료라니 정말 대기업의 신규 고객유치를 위한 혜택은 놀라울 정도로 파격적이라고 생각한다. 빨간색 박스안의 버튼을 클릭하면 가상 서버의 터미널에 접속 할 수 있다. AWS서버 터미널을 이용하여 로컬 터미널에서 하던 것을 가상 서버에서도 할 수 있다. ● 가상 서버로 프로젝트 옮기기..

    35.Gunicorn, Nginx

    35.Gunicorn, Nginx

    Gunicorn은 웹 서버 소프트웨어와 Django를 연결하기 위해 필요한 WSGI(web server gateway interface)이다. Nginx는 웹 서버 소프트웨어로 비슷한 것으로 Apache가 있다. Nginx는 성능, 보안 문제를 대처할 수 있게 해주며 클라이언트의 요청에 빠르게 응답할 수 있고 여러명의 사용자가 동시접속을 했을 시 여러 대의 서버로 요청을 분산하는 로드 밸런싱 기능도 제공해 주며 Django가 필요한 요청에 Django를 이용해 컴퓨팅 자원을 효율적으로 쓸 수 있게 해준다. ● Gunicorn 적용 Gunicorn을 위한 도커 이미지 수정 Gunicorn으로 서버를 실행하게 하기 위해 docker-compose.yml 파일의 web 컨테이너 부분을 수정하는데 command..

    34. PostgreSQL 사용

    34. PostgreSQL 사용

    Django에서 기본적으로 제공하는 Sqlite3는 간편하지만 조금이라도 규모가 커지면 보통의 성능을 기대할 수 없게된다. 그렇기 때문에 MySQL이나 Oracle, PostgreSQL MariaDB등을 이용하게 된다. 이번 블로그 프로젝트에는 PostgreSQL을 사용하기로 한다. 보통의 경우라면 로컬에 설치하고, 서버에도 설치해야 하지만 Docker가 있다면 단순하게 설정하는 것만으로 사용할 수 있게된다. ● PostgreSQL 사용 설정 Docker-compose.yml 수정 DB만 담당하는 컨테이너를 실행하여 PostgreSQL을 실행한다. web이라는 컨테이너에서 Django가 실행되고 db라는 컨테이너에서 PostgreSQL을 실행 하도록한다. settings.py와 .env.dev 파일 수정..

    33. Docker

    33. Docker

    ● Docker 설치 지금은 혼자서 개발하고 있지만 여러 명과 협업하게 된다면 사람마다 여러가지의 운영체제로 각자 맡은 업무를 개발하게 될 것이고 작업한 결과물을 리눅스 서버로 올리게 되면서 예상치 못한 오류와 같은 문제가 생길 것이다. 도커는 이러한 문제들을 안정적으로 처리해준다. 즉 도커는 다른 하드웨어, 운영체제에서 작업하더라도 동일한 환경을 갖출 수 있도록 해준다. docker -v를 입력하여 제대로 설치 되었는지 확인한다. ● Docker 파일 만들기 모듈 리스트 만들기 지금까지 사용된 라이브러리들은 가상환경(venv)에 설치되어 있다. 이제부터 설치된 라이브러리를 도커로 컨네이너로 옮기는데 cmber 터미널에서 pip freeze > requirements.txt 명령어로 설치된 라이브러리들을..