User Tools

Site Tools


docker:coachtown

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
docker:coachtown [2015/01/05 18:22] – [2. Dockerfile] 220.86.36.224docker:coachtown [2018/07/18 14:10] (current) – external edit 127.0.0.1
Line 1: Line 1:
 ====== Coachtown Docker ====== ====== Coachtown Docker ======
  
 +코치타운 서비스를 위한 도커 설치. 조금 수정하면 다른 django app 서비스에도 사용할 수 있다.   
  
 ===== 1. install docker ===== ===== 1. install docker =====
Line 49: Line 50:
 도커 컨테이서 생성.  도커 컨테이서 생성. 
  
-데이터 베이스 볼륨:  데이터 베이스가 호스트에 있는 파일을 쓰도록 하기 위해서 volume을 연결하여 컨테이너에서 호스트의 데이터 베이스 파일을 쓰도록 한다.+데이터 베이스 볼륨: 호스트에 있는 데이터베이스 파일을 쓰도록 하기 위해서volume으로 연결하여 컨테이너에서 호스트의 데이터 베이스 파일을 읽고 쓰도록 한다.
  
-컨테이너는 백그라운드로 돌리고 docker exec로 서버 실행 스크립트를 실행한다.  +컨테이너는 백그라운드로 돌리고 docker exec로 서버 실행 스크립트를 실행한다. Dockerfile로 이미지 생성할 때분터 서버 실행이 잘 안된다. (튜토리얼은 그렇게 하던데). 이유는 모르겠다.
-음 왜그러는지 이유는 못찾았는데, Dockerfile에서 부터 서버 실행이 잘 안된다. (튜토리얼은 그렇게 하던데)+
  
 +기존의 컨테이너를 삭제하고, 새 컨테이너를 실행 한다.
 cat scripts/docker_run.sh   cat scripts/docker_run.sh  
  
Line 69: Line 70:
 CONTAINERID=$(sudo docker ps -q) CONTAINERID=$(sudo docker ps -q)
 sudo docker exec -it $CONTAINERID /coachtown/restart.sh sudo docker exec -it $CONTAINERID /coachtown/restart.sh
 +</code>
 +
 +서버 실행 스크립트. 기존의 컨테이너를 지우고, 다시 생성하는 방식.
 +/coachtown/restart.sh
 +<code>
 +#!/bin/sh
 +
 +ps aux | grep 'python manage.py runfcgi' | awk '{ print $2 }' | sudo xargs kill -9
 +
 +if [ -d "/coachtown/mysite" ]; then
 +COACHTOWNAPP=/coachtown/mysite
 +else
 +COACHTOWNAPP=mysite
 +fi
 +
 +# cd mysite
 +cd $COACHTOWNAPP
 +
 +sudo python manage.py runfcgi method=prefork pidfile=/tmp/django_coachtown.pid host=127.0.0.1  port=8000
 +sudo /etc/init.d/nginx restart
 </code> </code>
  
  
docker/coachtown.1420482167.txt.gz · Last modified: 2018/07/18 14:09 (external edit)