Amazon EC2 호스팅에서 Django 웹 사이트를 설정하는 방법은 무엇입니까?

StackOverflow https://stackoverflow.com/questions/1638752

  •  08-07-2019
  •  | 
  •  

문제

누군가 Amazon EC2 호스팅 서비스를 사용하여 Django 기반 웹 사이트 호스팅을 구현하는 방법을 구체적인 단계로 제공 할 수 있습니까?

그게 가능합니까?

내 웹 사이트 소스 코드를 찾을 수 있습니다 여기

나는 이걸 찾아서 이것을 발견했다 기사

그러나 무엇이든하기 전에 Amazon EC2 호스팅에 대한 몇 가지 기본 아이디어를 얻고 싶습니다.

도움이 되었습니까?

해결책

확실히 가능하지만 EC2가 최선의 선택이 아닌 것 같습니다. 사람들의 예를 보려면 "django ec2"에 대한 Google과 첫 번째 및 두 번째 링크. 링크와 같은 링크 이것 또는 이것 (이 질문이 이제 그 쿼리의 최고 결과이기 때문에 편집되었습니다!)

매우 단순화 된 의미에서 EC2는 시간마다 임대 할 수있는 서버 일뿐입니다. Windows 또는 Linux를 실행 한 다음 평소처럼 Python 및 Django를 설치할 수 있습니다. 실제로 Django가 이미 미리 구성된 이미지가있을 수 있습니다. 프로젝트의 어떤 단계에 있습니까? 단지 연구를 했습니까, 아니면 Django 또는 EC2의 특정 문제에 갇혀 있습니까?

업데이트:좋아, 나는 당신이 혼란스러워하는 것은 다른 유형의 호스팅이 있다는 것입니다. One Extreme에서는 자신의 물리적 서버에 대한 비용을 지불하고, 자신의 운영 체제 (Windows 또는 Linux와 같은)를 설치하고, 자신의 파이썬을 설치하고, Apache 또는 IIS와 같은 웹 서버, 자신의 Django 라이브러리, 자신의 데이터베이스 (좋아요. mysql) 등을 그 다음 웹 사이트를 업로드하십시오. 다른 극단에서는 다른 사람이 OS 설정, 파이썬, 웹 서버 등의 모든 설정을 수행 한 공유 호스팅 서비스에 대한 계정을 지불 할 수 있으며 웹 사이트 코드를 업로드하기 만하면됩니다. EC2는 첫 번째 극단에 훨씬 가깝고 아마도 당신에게 과잉 일 것입니다. 귀하의 경우 더 관리되는 솔루션을 찾고 있어야한다고 생각합니다.
이 웹 페이지를 확인하여 다양한 Django 호스팅 회사가 나열되어 있습니다.Django 호스팅

다른 팁

서버를 처음부터 시작하고 싶지 않은 경우 다른 옵션을 사용하는 것입니다. Bitnami Django Stack Amazon 이미지. 저는 Bitnami 개발자이며 여러 Python 애플리케이션을위한 스택을 만들었습니다. Bitnami Django 스택에는 이미 MySQL 5.1, Apache 2.2 (mod_wsgi 포함) 및 Markdown, Html5lib 및 Python-Openid가 설치된 Python이 포함되어 있습니다. 또한 Django 1.3도 포함되었습니다.

Django Debug Toolbar를 설치하고 데이터베이스를 작성하고/opt/bitnami/apps/django/django_projects에 파일을 복사하고 python manage.py 명령을 실행해야합니다. 그런 다음 Django 서버 대신 프로덕션에서 사용하려면 Apache를 프로젝트에 서버로 구성해야합니다.

클라우드에 응용 프로그램을 직접 배포하려고하기 전에 기본 설치자를 사용하고 로컬 컴퓨터에서 배포를 테스트 할 수 있습니다.

우리는 또한 a 비용 추정 도구. 이것은 간단한 EC2/EBS 설정에 대한 대략적인 아이디어를 얻기위한 것입니다. 아마존은 많은 요인에 따라 다르지만 항상 예상 할 수있는 것만 큼 비싸지는 않습니다. (귀하의 의견에 따라 이미 비용을 살펴 보는 것 같습니다).

인스턴스에서 Apache Server를 사용하고 있다고 가정하면 Django 사이트의 공식 지침은 많은 블로그 게시물보다 더 잘 작동합니다. 다음은 링크에서 복사 한 내용입니다.https://docs.djangoproject.com/en/1.5/howto/deployment/wsgi/modwsgi/

/etc/apache2/apache2.conf에 다음 코드를 편집하고 추가하면 작동합니다.

WSGIScriptAlias / /path/to/mysite.com/mysite/wsgi.py
WSGIPythonPath /path/to/mysite.com

<Directory /path/to/mysite.com/mysite>
<Files wsgi.py>
Order deny,allow
Require all granted
</Files>
</Directory>

AWS EC2 T2.MICRO 인스턴스 (AWS Free Tier)에서 내 Django 웹 사이트를 개최했습니다. 이 프로젝트에 Django 1.9를, MySQL을 데이터베이스로 사용했습니다. SSH 터널을 인스턴스로 만들고 단계를 따르십시오.

  1. 인스턴스에 APACHE2 및 LIBAPACHE2-MOD-WSGI를 설치하십시오.

    sudo apt-get install apache2 libapache2-mod-wsgi

  2. 인스턴스에 django를 설치하십시오.

    sudo pip install django

  3. MySQL 설치 :

    sudo apt-get install mysqldb

    sudo pip install mysql-python

    sudo apt-get install libmysqlclient-dev

(PIP 설치가없는 경우 : sudo apt-get install python-pip)

  1. Django 프로젝트를 위해 MySQL을 구성하십시오. Django 프로젝트를 가져 오십시오 /var/www/html. (GIT 사용이 가장 좋은 방법입니다).

  2. 편집하다 /etc/apache2/sites-available/000-default.conf:

    <VirtualHost *:80>
        Alias /static /path_to_my_static_folder
    
        <Directory /path_to_my_project_folder_containing_wsgi.py>
            <Files wsgi.py>
                Require all granted
            </Files>
        </Directory>
    
        WSGIDaemonProcess project_name python-path=/path_to/lib/python2.7/site-packages
    
        WSGIProcessGroup project_name
        WSGIScriptAlias / /path_to_wsgi.py
    </VirtualHost>
    
  3. DB를 동기화하기 위해 마이그레이션 실행 :

    python manage.py migrate

  4. Apache2를 다시 시작합니다.

    sudo service apache2 reload

Settings.py에서 템플릿과 정적 경로를 하드 코딩하지 않았기를 바랍니다.

그게 다야! AWS EC2 인스턴스에서 호스팅 된 Django 웹 사이트에 액세스하려면 공개 IP 또는 DNS를 방문하십시오.

오류가 발생하면 아래에 의견을 제시하십시오.

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