4. 관리자 계정 생성 및 배포하기
지난 번 관리자 페이지 화면에서 끝이 났었다.
이 관리자 페이지에서는 모델링한 글을 수정,삭제 할 수있는데
그러기 위해서 간단한 소스 설정을 해준다.
blog/admin.py
이제 관리자 페이지에 로그인 할 수 있는 슈퍼유저를 생성한다.
python manage.py createsuperuser
여기서 주의 점은, 가상환경을 반드시 활성화 시킨 후에 실행해야 한다는 것이다.
그러지 않으면 위와 같이 오류가 난다...
가상환경 셋팅 후, 정상적으로 관리자 계정이 만들어진 모습.
로그인해본다.
접속완료.
글을 써보자.
이제 내 컴퓨터에만 보이게 하는 것이 아닌
다른 사람이 볼 수 있게 배포를 해야 한다.
Pythonanywhere를 이용해 서버에 배포를 할 예정이다. (무료)
그 과정에 저번에 설치한 Git을 이용하여 중간 다리 역할(?)을 시킬 것이다.
로컬 컴퓨터에서 개발한 내용을 사본으로 갖고있게 두고
이 깃을 통해 Pythonanywhere에 올릴 예정이다.
-Git 저장소 초기화하기
깃 저장소(Repo) 사용 전 초기화를 진행한다. 폴더는 프로젝트 폴더(djangoblog) 에서 진행하고 처음 사용 전 한번이면 된다.
-Git 의 추적 무시파일 만들기
나중에 편하다.
현재 추가된 파일(변동사항) 이 있는지 확인하는 명령은 git status.
*로컬에 저장 된 파일들을 깃으로 올려주자.
먼저 Git 저장소를 만들어준다. 이름은 메뉴얼대로 'my-first-blog' =나의 첫 저장소.
↓ 차례대로 입력하기!
※ Git remote 안되는 증상 에러(1) 뜰 때 해결법
: 기존의 remote origin을 삭제해준다.
짠! 해결 된 모습.
※ Git push 안되는 증상 에러(2) 뜰 때 해결법
: 깃의 인증방식이 토큰 방식으로 바뀌었나보다. 역시나 구글링ㄱㄱ..
Git Settings - Developer settings - Personal access tokens - 'Generate new token'
체크 후 생성, 복사
-터미널에서 깃 유저 정보 입력(잔디 심는 과정)
: 깃헙에 등록 된 유저 이름과 이메일 정보를 아래와 같이 입력하여 넣어준다.
-git push 다시 시도하기
아이디는 유저 네임 , 비밀번호는 깃헙의 패스워드가 아니라 xxxxxxx
'복사한 토큰'을 붙여넣어준다. 그러면 아래처럼 못보던 화면이 뜬다.
깃 푸쉬도 어렵게 성공!
-Pythonanywhere에 업로드하기
: 계정 로그인 후 - Consoles - bash console 에 아래와 같이 입력.
git 저장소를 끌어와 복제해서 올리는 것이다.
동기화 중~
git clone 완료.
tree my-first-blog 명령을 통해
서버환경에, 깃의 '파일들'이 복제된 것을 알 수 있다.
-Pythonanywhere 가상환경(virtualenv) 따로 만들기
my-first-blog 디렉토리로 들어가 아래와 같이 명령을 입력
가상환경 생성 후 진입한 모습.
-Pythonanywhere 가상환경(virtualenv) - pip 패키지 install 하기
가상환경에 진입해 pip를 이용해 django를 install한다.
-Pythonanywhere 가상환경(virtualenv) - 데이터베이스 생성 및 초기화
django를 통해 만들어진 가상환경 내에 python.py 을 이용하여 DB 생성을 한다.
createuser도 진행.
코드가 서버에 있고 가상환경(virtualenv)도 준비가 되었으며,
정적 파일들도 모여 있고, 데이터베이스도 초기화되었다 ?
= 웹 앱으로 배포할 준비가 되었다.
-Pythonanywhere 가상환경 keyword 등록
-WSGI 프로토콜(WSGI protocol) 설정
장고는 "WSGI 프로토콜(WSGI protocol"을 사용해 작동하는 파이썬 웹사이트 서비스 표준이다.
[Code] - ....py 를 클릭해 아래와 같이 소스를 수정한다. 그리고 save.
reload 후 내 사이트에 접속한 모습.
읭?! 에러..
로그파일을 살펴보자.
이 부분을 보니 느낌이 온다.
WSGI.py 에 들어가 의심되는 부분을 고쳤다.
정상작동!
나의 웹 사이트가 성공적으로 서버에 등록되었다.
'Backend-dev > Django' 카테고리의 다른 글
[Python] Centos8 환경에서 디장고 개인 블로그 만들어보기 (3) (0) | 2022.01.14 |
---|---|
[Python] Centos8 환경에서 디장고 개인 블로그 만들어보기 (2) (0) | 2022.01.14 |
[Python] Centos8 환경에서 디장고 개인 블로그 만들어보기 (1) (0) | 2022.01.13 |