Docker로 Django 애플리케이션 구축하기

이재홍 http://www.pyrasis.com 2014.08.02 ~ 2014.09.20

Django 설치하기

Django 이미지를 생성하기 전에 먼저 Django 개발 환경을 구축해야 합니다. 각 리눅스 배포판의 패키지로 Python pip를 설치한 뒤 pip로 Django를 설치합니다.

다음 명령을 실행하여 pip와 Python 개발 패키지를 설치합니다.

우분투

$ sudo apt-get install python-pip python-dev

CentOS 6

$ sudo yum install http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
$ sudo yum install python-pip python-devel gcc

CentOS 7

$ sudo yum install http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-2.noarch.rpm
$ sudo yum install python-pip python-devel gcc

CentOS 7 EPEL 패키지 버전
CentOS 7용 EPEL 패키지는 버전이 빠르게 업데이트됩니다. rpm 파일을 받을 수 없을 때는 http://dl.fedoraproject.org/pub/epel/7/x86_64/e/에 접속하여 새 버전이 있는지 확인한 뒤 yum 명령으로 해당 버전을 설치합니다.

Python용 Oracle 라이브러리인 cx_Oracle을 사용하려면 Oracle 사이트에서 인스턴트 클라이언트 패키지를 받아서 설치해야 합니다. 웹 브라우저에서 다음 URL에 접속합니다.


그림 18-2 Oracle 인스턴트 클라이언트 패키지 다운로드

Accept License Agreement를 클릭하고 다음 두 파일을 받습니다. 파일을 받으려면 Oracle 계정으로 로그인을 해야합니다. Oracle 계정이 없다면 먼저 가입을 합니다.

  • oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm
  • oracle-instantclient12.1-devel-12.1.0.2.0-1.x86_64.rpm

참고
SQL*Plus를 사용하려면 oracle-instantclient12.1-sqlplus-12.1.0.2.0-1.x86_64.rpm 파일을 받아서 설치합니다.

 

 

받은 rpm 파일을 Django를 설치할 리눅스 서버로 복사합니다. Windows에서는 WinSCP(http://www.winscp.net), Mac OS X에서는 sftp 명령을 사용하면 됩니다.

파일을 복사했으면 다음 명령을 실행하여 Oracle 인스턴트 클라이언트 패키지를 설치합니다. 우분투는 alien으로 rpm 패키지를 설치하면 됩니다. 단 alien으로는 의존 관계에 있는 패키지가 자동으로 설치되지 않으므로 libaio1 패키지를 따로 설치합니다.

우분투

$ sudo apt-get install alien libaio1
$ sudo alien -i oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm
$ sudo alien -i oracle-instantclient12.1-devel-12.1.0.2.0-1.x86_64.rpm

CentOS

$ sudo yum install oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm
$ sudo yum install oracle-instantclient12.1-devel-12.1.0.2.0-1.x86_64.rpm

alien
alien은 레드햇(.rpm), LSB, 스탬피드, 슬랙웨어 리눅스 배포판의 패키지를 데비안(우분투) 리눅스 패키지로 변환하여 설치해주는 도구입니다.

Oracle 인스턴트 클라이언트 동적 라이브러리를 사용할 수 있도록 설정합니다.

$ echo "/usr/lib/oracle/12.1/client64/lib" | sudo tee -a /etc/ld.so.conf.d/oracle.conf
$ sudo ldconfig

.bashrc 파일에 Oracle 환경 변수를 설정합니다.

~$ echo "export ORACLE_HOME=/usr/lib/oracle/12.1/client64" >> .bashrc
~$ source .bashrc

pip 명령으로 django, cx_Oracle 패키지를 설치합니다. 여기서 env 명령으로 root 권한에도 ORACLE_HOME을 설정합니다.

$ sudo env ORACLE_HOME=$ORACLE_HOME pip install django cx_Oracle

MySQL, PostgreSQL 사용하기

MySQL을 사용하려면 다음 패키지를 설치합니다.

우분투

$ sudo apt-get install mysql-client libmysqlclient-dev

CentOS

$ sudo yum install mysql mysql-devel
$ sudo pip install django MySQL-python

PostgreSQL을 사용하려면 다음 패키지를 설치합니다.

우분투

$ sudo apt-get install postgresql-client libpq-dev

CentOS

$ sudo yum install postgresql postgresql-devel
$ sudo pip install django psycopg2

저작권 안내

이 웹사이트에 게시된 모든 글의 무단 복제 및 도용을 금지합니다.
  • 블로그, 게시판 등에 퍼가는 것을 금지합니다.
  • 비공개 포스트에 퍼가는 것을 금지합니다.
  • 글 내용, 그림을 발췌 및 요약하는 것을 금지합니다.
  • 링크 및 SNS 공유는 허용합니다.

Published

30 November 2014