• [ 배경 ]
    • python anywhere에는 docker설치도 힘들었고 redis를 사용해야 했기에 설치가 어려웠다.
    • 로컬 웹서버로 서비스를 가동하기에는 한계가 있다(feat, NAT IP 포트 포워딩)
    • aws putty ppk 접속 및 nginx설치 그리고 보안 그룹에서 방화벽 설정
    • 방화벽은 설정하였으나 https가 아닌 http로만 통신(인증서 설정 필요..)

  • [ 과정 ] 
    ec2 ubunutu 프리티어를 설치하였다(자세한 내용은 생략..)

    ppk를 통해 원격 aws ec2 unbuntu에 접속하였다. git clone https://github.com/junshock5/gong-ha-talk.git 을 통해 소스코드를 내려받았다

    python3 manage.py runserver 0:8080 명령어를 통해 접속 후 ec2 public IP로 접속하였으나 보안 설정이 안 되어 접속이 안되었다.

    port 8080을 보안그룹 인바운드 규칙에 추가하였다.

docker run -p 6379:6379 -d redis:5

docker 명령어로 redis를 설치하였으나 django channel과 redis 간의 연결 라이브러리가 설치가 안되어서 아래와 같은 오류가 났다.

cannot import backend 'channels_redis.core.redischannellayer' specified for default 

(python 실행과 redis 설치를 위해 putty session 2개로 접속하였다)

apt-get install redis-server 명령어로 redis-server를 설치하니 채팅이 잘되었다.

이젠 프론트 개발과 결제 연동을 해보려고 한다.

테스트를 도와주신 여러분 감사합니다.

5분간 모니터링 리소스


  • [ 결과 ]
    • python channel과 redis-server 간의 연동 방식을 배웠다.
    • https 통신은 인증서가 필요하다.
    • ec2에선 docker 명령어를 칠 수 있다.
    • django 라이브러리 간 버전이 개발 환경과 다를 시 conflict이 자주 일어난다.
    • 방화벽과 settigs에 hosts를 명시해야만 정상 접근이 가능하다.

+ Recent posts