Hostwinds 튜토리얼

에 대한 검색 결과:


목차


필요할 것이예요:
Postgresql 사용자 설정
메 자닌 설정
uWSGI를 사용하여 애플리케이션 배포
NGINX 구성

메 자닌 설치 및 구성 (Ubuntu 19.10)

태그 : Ubuntu 

필요할 것이예요:
Postgresql 사용자 설정
메 자닌 설정
uWSGI를 사용하여 애플리케이션 배포
NGINX 구성

Mezzanine은 Python으로 작성된 콘텐츠 관리 시스템입니다.인기있는 WordPress의 훌륭한 대안이며 비슷한 인터페이스를 제공합니다.

필요할 것이예요:

  • Hostwinds SSD 클라우드 또는 전용 서버
  • 우분투 19.10. 당신은 여기에서 ISO를 여기에서 얻을 수 있습니다 : https://ubuntu.com/download/serve 그런 다음 여기에서 ISO에서 설치하기위한 가이드를 사용하세요. https://www.hostwinds.com/guide/reinstall-vps-cloud-server-from-an-iso/
  • 작동하는 공개 도메인. Hostwinds는 http://hostwinds.com/domains.php에서 도메인을 제공합니다.
  • Python3
  • virtualenvwrapper 스크립트
  • nginx 웹 서버
  • Postgresql

이 모든 것을 실행하려면 다음 명령을 사용하십시오.

sudo apt install python3 python3-pip postgresql nginx libpq-dev

그런 다음 install virtualenvwrapper *에서 pip를 사용합니다.

sudo pip3 install virtualenvwrapper

일반적으로 설치 소프트웨어에서 PIP3을 사용하는 것은 나쁜 아이디어이지만 VirtualEnvwrapper는 시스템 전체를 설치하는 데 의미가있는 몇 가지 패키지 중 하나입니다.

이제 메 자닌의 환경을 설정하고 설치하십시오.

mkvirtualenv my_site
work on my_site
pip3 install mezzanine uwsgi pillow

모든 종속성이 설치된 상태에서 데이터베이스를 설정해야합니다.

Postgresql 사용자 설정

PostgreSQL 용 사용자를 구성하려면 SQL 명령 줄에서 실행할 수있는 몇 가지 SQL 문만 필요합니다. SQL 셸을 시작하려면 다음을 수행하십시오.

sudo su postgres -c psql

psql 셸에서 다음 3 줄을 실행합니다.

CREATE USER your_site_name WITH ENCRPYPTED PASSWORD 'secure_pass';
CREATE DATABASE your_site_name;
GRANT ALL PRIVILEGES ON DATABASE your_site_name TO your_site_name;

이러한 명령은 데이터베이스를 만들고 사용자가 상호 작용합니다.

이제 우리는 해당 사용자에 대한 액세스 권한을 부여해야 할 수도 있습니다.이 명령을 사용하여 pg_hba.conf를 편집하십시오. PostgreSQL이 액세스를 확인하는 데 사용하는 것입니다.

sudo nano /etc/PostgreSQL/11/main/pg_hba.conf

이 줄이 파일에 있는지 확인하십시오.

모든 127.0.0.1/32 MD5 호스트

파일을 편집 한 후에는 변경 사항을 적용하도록 데이터베이스를 다시 시작하십시오.

sudo systemctl restart postgresql

메 자닌 설정

이제 데이터베이스가 설정되었으므로 메 자닌을 구성하도록 이동할 수 있습니다. Mezzanine 프로젝트를 시작하려면 다음 명령을 사용하십시오.

(my_site) mezzanine-project my_site

cd my site

my_site 디렉토리에서 "my_site"라는 다른 디렉토리를 찾을 수 있습니다.settings.py라는 파일을 편집해야합니다.

nano mysite/settings.py

해당 파일에는 두 가지 설정이 있습니다.

데이터베이스 구성, 이전에 만든 SQL 사용자와 동일한 사용자 및 암호를 사용합니다.

DATABASES = {
"default": {
    # Add "postgresql", "mysql", "sqlite3" or "oracle".
    "ENGINE": "django.db.backends.postgresql",
    # DB name or path to database file if using sqlite3.
    "NAME": "my_site",
    # Not used with sqlite3.
    "USER": "my_site",
    # Not used with sqlite3.
    "PASSWORD": "secure_pass",
    # Set to empty string for localhost. Not used with sqlite3.
    "HOST": "127.0.0.1",
    # Set to empty string for default. Not used with sqlite3.
    "PORT": "",
}
}

허용 된 호스트 :

ALLOWED_HOSTS = ['my_site.com', 'www.my_site.com']

준비가되면 settings.py 파일을 저장하십시오.

적절한 이름의 manage.py 스크립트는 서버를 설정하고 관리하는 데 사용됩니다. 이제 Mezzanine에 데이터베이스 사용자가 올바르게 구성되었으므로 다음과 같이 createdb 명령을 사용하여 테이블을 추가 할 수 있습니다.

python manage.py createdb

그런 다음 사이트 관리에 도움이되는 관리자를 추가합니다.

python manage.py createsuperuser

마지막으로 다음을 사용하여 자바 스크립트 및 CSS와 같은 자산을 작성하십시오.

python manage.py collectstatic

uWSGI를 사용하여 애플리케이션 배포

웹 사이트가 올라감기 위해 코드와 웹 서버를 실행하여 외부 세계와 통신하기 위해 파이썬 로더를 구성해야합니다.파이썬 로더로 시작합시다.이 설정에 대해 UWSGI 러너를 사용할 것입니다.

my_site / my_site 디렉토리에서 nano를 사용하여 my_site.ini라는 파일을 만듭니다.

[uwsgi]
socket = 127.0.0.1:8080
chdir = /home/$USER/my_site
wsgi-file = my_site/wsgi.py
processes = 2
threads = 1

/usr/lib/systmd/system/my_site.service에 서비스 파일을 만들어 부팅시 실행되도록 uWSGI를 설정할 수 있습니다.

[Unit]
Description=My Site
After=Network.target

[Service]
User=$USER
Group=$USER
WorkingDirectory=/home/$USER/my_site
Environment="PATH=/home/$USER/.virtualenvs/mezzanine/bin"
ExecStart=/home/$USER/.virtualenvs/mezzanine/bin/uwsgi my_site.ini

마지막으로 다음 명령을 실행하십시오.

sudo systemctl enable my_site

과:

sudo systemctl start my_site

이는 파이썬 러너를 부팅시 시작하고 지금 시작하도록 구성합니다.

NGINX 구성

이 모든 밖에있는 마지막 작업 하나 : 웹 서버를 설정합니다. NGINX는 역방향 프록시 기능으로 인해 Python 프로젝트에 대한 인기있는 선택입니다.

구성하려면 / etc / nginx / sessionabled 에이 파일을 추가하십시오.

upstream mezzanine {
        server 127.0.0.1:9081;
}

server {
        listen 80 default_server;
        server_name www.my_site.com my_site.com;
        charset utf-8;
        client_max_body_size 50M;


        location /media {
                alias /home/$USER/my_site/media;
        }

        location /static {
                alias /home/$USER/my_site/static;
        }

        location / {
                uwsgi_pass mezzanine;
                include uwsgi_params;
        }
}

그런 다음이 구성을 적용하려면 다음 명령을 실행하십시오.

sudo systemctl restart nginx

작성자 Hostwinds Team  /  12 월 2, 2019