라즈베리파이4와 공식 7인치 터치스크린을 가지고 있습니다.
공모전에 출품할 프로토타입 제작을 위해서 Django 웹서버를 설치했습니다.
1. 파이썬 버전 확인
최신 라즈비안OS라면 파이썬2, 3이 둘 다 설치되어있습니다.
터미널에서 다음 명령어를 실행하면 버전 확인이 가능합니다.
// python2 version check
python --version
// python3 version check
python3 --version
저는 2.7.16과 3.7.3버전이 깔려있습니다.
2. Django 설치
저는 Python3 버전 Django(장고)를 사용할 생각이라서, python3 버전으로 깔아줬습니다.
sudo apt-get update
pip3 install django
Django 설치는 명령어 한줄로 가능해서 간단했습니다.
제가 설치한 장고 버전은 3.1.2 였습니다.
그리고 startproject 명령어로 프로젝트를 생성하려고 했는데,
django-admin startproject mysite // 안됨
django-admin.py startproject mysite // 안됨
django-admin, django-admin.py 명령어 둘 다 먹질 않았습니다.
구글링 하면 대부분 위 두개의 명령어로 포스팅을 해놔서 당황하다가, stackoverflow에서 구세주를 발견했습니다.
Command not found : django-admin.py
python3 -m django startproject mysite
이 명령어는 먹혀서 mysite 프로젝트를 생성할 수 있었습니다.
3. 서버 실행
생성한 mysite 서버를 실행시켜봤습니다.
cd mysite
python3 manage.py runserver
라즈베리파이에 기본으로 깔려있는 웹 브라우저에서 127.0.0.1:8000에 접속하면,
아래와 같이 Django 서버가 잘 동작하는 것을 확인할 수 있습니다.
4. 외부 접속
프로토타입 제작을 위해서 같은 와이파이, 즉 같은 IP에 접속되어 있는 노트북에서 Django 서버에 접속할 수 있도록 만들어야 했습니다. mysite/settings.py를 수정하고 runserver를 할 때 IP를 지정해줬습니다.
먼저 아래 명령어로 라즈베리파이가 할당받은 내부 IP를 확인합니다.
hostname -I
제 라즈베리파이가 할당받은 주소는 172.30.1.55 입니다.
이 주소를 mysite/settings.py 내의 ALLOWED_HOSTS 내에 적어줍니다.
ALLOWED_HOSTS = ['172.30.1.55']
그리고 다음 명령어로 서버를 실행합니다.
python3 manage.py runserver 172.30.1.55:8000
같은 IP를 사용하고 있는 제 노트북에서 크롬 브라우저를 켜고 172.30.1.55:8000에 접속했을 때,
잘 접속되는 걸 확인했습니다.
아예 다른 IP를 사용하는데 접속하고 싶다면 포트포워딩을 해야하는데, 저는 프로토타입만 제작하면 돼서 여기까지 세팅했습니다. 이제 REST API 구현하고, 센서 데이터 저장하는 것만 구현하면 되는데,,;ㅅ; 갈길이 태산이네요
잘못된 내용이 있다면 언제든지 댓글이나 메일로 알려주시면 감사하겠습니다.
이 포스팅이 도움이 되었다면 공감 부탁드립니다.
궁금한 점은 언제든지 댓글 남겨주시면 답변해드리겠습니다:D
'관리하지않음 > 라즈베리파이' 카테고리의 다른 글
라즈베리파이 공식 7인치 터치스크린 리뷰 (2) | 2020.10.23 |
---|---|
라즈베리파이4 안드로이드 블루투스 통신하기 (22) | 2020.10.10 |