2018/07(5)
-
템플릿 엔진이란 무엇인가?
자, 여기 인형을 만드는 업자가 있습니다. 이 업자는 인형을 만들기 시작한지 얼마 되지 않아 바느질에 익숙하지 않습니다. 고객으로부터 원하는 인형을 주문 받으면 업자는 창고에서 몸통, 눈, 코, 입을 가져와서 바느질을 시작합니다. 한참을 만들어서 고객에게 보내는데 문제가 발생합니다. 고객이 눈의 색깔을 바꿔달라고 합니다. 요령이 없던 업자는 처음부터 인형을 만들기 시작합니다. 굉장히 비효율적이죠. 시간이 흘러 일이 손에 익은 업자는 고객이 인형의 일부를 바꿔달라는 요청을 해낼 수 있게됩니다. 깨끗하게 수정 부분을 제거하고 딱 그 부분만 바꿔서 고객에게 돌려주는 거죠. 당연히 시간이 줄어듭니다. 하지만 문제가 여기서 또 생깁니다. 업자가 바질을 원래 못했기 때문에 수정을 하다가 자꾸 실수를 하게 됩니다. ..
2018.07.31 -
AWS EC2 인스턴스에 Putty로 원격접속하기
EC2 인스턴스 생성 가장 먼저 EC2 인스턴스를 AWS Console창에서 생성합니다. 베이스가 될 이미지를 선택하고 다음을 누릅니다. 어떤 유형의 인스턴스를 사용할 것인지 본인의 환경에 맞게 선택합니다. 보안 그룹 구성이 중요한데 22번 포트와 SSH 프로토콜이 인바운드 규칙에 반드시 포함되어 있어야 합니다. 그래야 Putty를 통해 원격접속을 할 수 있습니다. 인스턴스를 생성하면 초기화를 거쳐 활성화 상태가 됩니다. 이때 Key Pair를 생성할 것이냐고 물어보는데 새로 키페어 생성을 선택하고 다운로드를 받습니다. Putty Gen을 이용하여 ppk 파일 생성하기 Putty로 AWS EC2 인스턴스에 원격접속하기 위해서는 .ppk 확장자를 가진 키 파일이 있어야 합니다. 이는 Putty 사이트에서 ..
2018.07.25 -
Django의 Simple Template Response와 Template Response에 대해서
Django는 강력한 웹 프레임워크입니다. 쉽게 사용할 수 있는 Python언어로 구현되어 있으며 10만개가 넘는 다양한 패키지들을 제공하기 때문에 뛰어난 생산성을 자랑합니다. Django에서는 웹 프론트엔드 구현을 더 빠르고 쉽게하기 위해서 다양한 템플릿들을 제공합니다. Django에서 기본적으로 제공하는 HttpResponse는 정적인 파일들(웹 페이지에 동적으로 데이터가 들어가지 않는 파일들)을 렌더링해서 응답으로 보내줍니다. HttpResponse는 객체가 생성됨과 동시에 이미 렌더링된 컨텐츠(HTML 파일) 받습니다. 해당 컨텐츠를 수정할 수 있지만 쉽게 수정할 수 있는 구조는 아닙니다. 이것은 마치 가게에서 이미 포장까지 완료된 상품을 바꿔달라고 하는 것과 같습니다. 만약 상품 포장을 하기 전..
2018.07.24 -
Docker 이미지 빌드시 선택적으로 Layer Caching 사용하기
DockerFile에서 이미지를 빌드하다 보면 수 많은 RUN 명령어를 사용하게 됩니다. RUN 명령어는 이미지 레이어를 만들게 되는데 이 이미지 레이어는 우리가 흔히 게임할 때 저장을 하는 세이브 포인트 역할을 합니다. 따라서 다음번에 Docker 이미지를 빌드할 때 해당 이미지를 Caching하여 사용합니다. 이는 빌드 시간을 단축시킵니다. 하지만 때때로 Cache를 사용하지 않고 명령을 수행해야 할 경우가 있습니다. 예를 들어, 원격 저장소에서 소스 코드를 받아와서 사용하는 경우 Caching된 이미지 레이어를 사용하는 경우 변경된 소스가 반영되지 않습니다. 이를 해결하기 위해 다음의 솔루션을 사용합니다. #DokerFile FROM centos/python-36-centos7 MAINTAINER ..
2018.07.23 -
AWS EC2에서 BitBucket으로 자동 배포 시스템(Auto Deployment) 구축하기
배포 프로세스 BitBucket 환경구축ssh key 생성하기cd ~/.ssh ssh-keygen -t rsa 위와 같이 명령어를 입력하면 key 파일 이름을 입력하라고 나옵니다. 용도에 맞게 적당히 키이름을 입력하면 passphrase를 입력하라고 나오는데 이 부분은 넘어가게 됩니다. 엔터 그리고 다시 엔터를 누르면 위와 같이 개인키와 공개키가 생성이 됩니다. 개인키는 EC2에서 BitBucket에 접속할 때 사용되고, Public Key는 서버측에 등록합니다. 위의 bitbucket_rsa.pub가 공개키입니다. 위 그림과 같이 BitBucket에 들어가서 Profile_setting에 갑니다. 그러면 Security 항목에 SSH keys관리하는 탭이 있는데 이곳을 클릭합니다. Add key를 눌러..
2018.07.17