문제

최근 OpenShift에서 Django 프로젝트를 내보내려고 시도했지만 성과가 없었습니다.내가 찾은 유일한 솔루션은 "미리 구축된" 솔루션이었습니다(예: https://github.com/openshift/django-example).

내 프로젝트에 적용하려고 몇 시간을 보냈지만 항상 내부 서버 오류가 발생했습니다.

그렇다면 openshift에서 django를 설정하는 방법은 무엇입니까?

도움이 되었습니까?

해결책

나는 마침내 그것을 알아 냈습니다.가장 먼저 해야 할 일은 openshift 앱을 시작하고 setup.py 파일을 편집하는 것입니다.

rhc app create -a APPNAME -t python-2.6
cd APPNAME
vim setup.py

"install_requires=['Django>=1.3']" 주석을 제거해야 합니다.

그런 다음 서버에 커밋할 수 있습니다.

git commit -a -m "Initialization"
git push

기본적으로 django 1.4가 설치되지만 setup.py에서 올바른 설치 요구 사항이 있는 다른 버전을 선택할 수 있다고 생각합니다.어쨌든, 다음을 위해서는 컴퓨터와 서버에서 동일한 django 버전을 실행해야 합니다.

django 프로젝트를 만듭니다.

cd wsgi
django-admin.py startproject PROJECTNAME

그런 다음 파일 응용 프로그램을 편집하고 전체 내용을 다음과 같이 바꿔야 합니다.

#!/usr/bin/python
import os, sys

os.environ['DJANGO_SETTINGS_MODULE'] = 'PROJECTNAME.settings'
sys.path.append(os.path.join(os.environ['OPENSHIFT_REPO_DIR'], 'wsgi',
    'PROJECTNAME'))

virtenv = os.environ['APPDIR'] + '/virtenv/'
os.environ['PYTHON_EGG_CACHE'] = os.path.join(virtenv, 'lib/python2.6/site-packages')
virtualenv = os.path.join(virtenv, 'bin/activate_this.py')

try:
    execfile(virtualenv, dict(__file__=virtualenv))
except IOError:
    pass

#
# IMPORTANT: Put any additional includes below this line.  If placed above this
# line, it's possible required libraries won't be in your searchable path
# 
from django.core.handlers import wsgi
application = wsgi.WSGIHandler()

마지막으로 수정 사항을 커밋할 수 있습니다.

cd ..
git add .
git commit -a -m "Project Creation"
git push

django 시작 페이지가 표시되어야 합니다.이제 설정을 편집하고 원치 않는 콘텐츠 없이 django 앱을 가져올 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top