장고:도커로 올리기
편집하기
둘러보기로 이동
검색으로 이동
경고:
로그인하지 않았습니다. 편집을 하면 IP 주소가 공개되게 됩니다.
로그인
하거나
계정을 생성하면
편집자가 사용자 이름으로 기록되고, 다른 장점도 있습니다.
스팸 방지 검사입니다. 이것을 입력하지
마세요
!
{{장고}} ==개요== 도커. 가상화. 서로 다른 OS나 다른 환경에서 돌아가던 프로그램이 환경이 바뀌면 돌아가지 않곤 한다. 이를 위한 가상화. 가상머신과 다른 점은 하나의 컴퓨터에 자원을 지정할당하는 게 아닌, 호스트와 커널을 공유하는 반가상화라는 것. 간편하고 성능을 잘 끌어들인다는 점에서 경제적이다. <br /> ==gunicorn== 장고의 runserver 대신 gunicorn을 이용해 서비스를 해야한다. {| class="wikitable" |+ !과정 !설명 |- |runserver 대신 gunicorn 사용 |CMD 부분의 runserver를 바꿔준다. <code>CMD ["gunicorn", "config경로.wsgi", "--bind", "0:8000"]</code> 로 바꿔준다. |- |이미지를 만들기 위한 기본 설치 |CMD라인 이전에 <code>RUN pip install gunicorn</code> 을 추가해준다. |- |이미지 만들기 |이 파일로 이미지를 만든다. |- |컨테이너 만들기 |해당 포트로 접속하면 static이 빠진 웹페이지가 뜨면 정상. |} ==nginx== gunicorn을 웹서버에 연결해야 한다. 포트를 통해 nginx에 접속할 순 있지만, 이를 gunicorn과 연결해야 한다. ===docker network=== 지정된 컨테이너 이름을 토대로 컨테이너들끼리 내용을 주고받을 수 있는 기능을 제공한다. http://컨테이너이름:포트번호 로 지정하여 내용을 보내면 내용이 해당 컨테이너로 전달된다. 포테이너 좌측 메뉴 중, Network로 들어가면 네트워크를 만들 수 있다. 대충 생성하면 된다. 목표는 nginx를 gunicorn에 연결하는 것. (작정하고장고에선 네트워크를 먼저 만들고 진행한다.)네트워크가 만들어진 상태에서 컨테이너를 만들면 하단의 네트워크 탭에서 네트워크를 지정할 수 있다.(컨테이너를 만들고 난 후에도 할 수 있는 거 아닌감;;?) ===설정파일 만들기=== 다음과 같이 설정한다.<syntaxhighlight> worker_processes auto; events {} http { server { listen 80; server_name example.org; access_log /var/log/nginx/example.log; location / { proxy_pass http://컨테이너 이름:연결한 포트(일반적으로 8000); proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } } </syntaxhighlight>proxy_pass 부분만 변경한다. <code>파일명.conf</code> 로 저장. 이 설정파일을 FTP를 이용해 아무 디렉터리에 옮겨둔다. 이후 컨테이너 작성 시작. {| class="wikitable" !과정 !설명 |- |볼륨 설정 |volume mapping에서 container은 /etc/nginx/nginx.conf 를 넣어주고, host에선 위에서 만든 파일경로를 넣어준다.(컨테이너 안에 있는 파일과 host에서의 파일을 연결하는 것.) |- |네트워크 설정 |포트번호 알아서 지정, 네트워크를 지정한다. |} 설정이 끝났으면 deploy. 해당 ip의 해당 포트로 들어가면 static이 빠진 웹페이지가 보인다. <br /> ==정적파일 구동하기== 파이썬 이미지 파일에 RUN python manage.py collectstatic 을 넣어주고...
요약:
학교의 모든 지식. SMwiki에서의 모든 기여는 크리에이티브 커먼즈 저작자표시-비영리-동일조건변경허락 라이선스로 배포된다는 점을 유의해 주세요(자세한 내용에 대해서는
학교의 모든 지식. SMwiki:저작권
문서를 읽어주세요). 만약 여기에 동의하지 않는다면 문서를 저장하지 말아 주세요.
또한, 직접 작성했거나 퍼블릭 도메인과 같은 자유 문서에서 가져왔다는 것을 보증해야 합니다.
저작권이 있는 내용을 허가 없이 저장하지 마세요!
취소
편집 도움말
(새 창에서 열림)
이 문서에서 사용한 틀:
틀:장고
(
원본 보기
) (보호됨)
둘러보기 메뉴
개인 도구
로그인하지 않음
토론
기여
로그인
이름공간
문서
토론
한국어
보기
읽기
편집
원본 편집
역사 보기
더 보기
검색
둘러보기
대문
최근 바뀜
임의의 문서로
미디어위키 도움말
도구
여기를 가리키는 문서
가리키는 글의 최근 바뀜
특수 문서 목록
문서 정보