django (18) 썸네일형 리스트형 [Django] CEOS vote_project 정리 #개발 준비 bariBari23/django-vote-17th: 파트장/데모데이 투표 (github.com) GitHub - bariBari23/django-vote-17th: 파트장/데모데이 투표 파트장/데모데이 투표. Contribute to bariBari23/django-vote-17th development by creating an account on GitHub. github.com https://documenter.getpostman.com/view/25425757/2s93z9d3Md vote_project The Postman Documenter generates and maintains beautiful, live documentation for your collections. Neve.. [docker] django.db.utils.OperationalError: (1051, Unknown table ~) 개발 후 배포를 위해 docker에서 돌려보는데 저런 오류가 났다. 분명 db container는 잘 생성됐는데...web container가 못 찾고있다. 저거 말고도 db와 관련된 오류가 2~3개 번갈아가면서 나왔다. 내가 코드를 잘못짠건가 해서 다른 팀원한테 부탁해서 돌려봤는데 거기서는 실행이 잘 된다...! 내가 이전에 모델을 여러번 수정해서 migrations파일이 여러개 있었는데 그게 문제였던 것 같다. migrations날리고 다시 migrate해주니까 해결됐다~ 난...window가 문제인 줄 알고 노트북 바꿀 생각까지 했다. 이것저것 만지다가 mysql Workbench도 맛이 가버렸다. table could not be fetched 이런식으로 table이나 view를 보여주지 않는다... AWS 배포(4) - SSH 연결 및 docker 관리 이건 필수는 아니지만... 어디에 문제가 있는지 확인하거나 지금 컨테이너 확인하거나...여러개 알아두면 좋다. 나도 문제를 여기서 확인하고 해결했다. # 서버 관리 나같은 경우에는 github action에서는 오류가 발견되지 않았는데, 서버가 작동하지 않았다. sudo docker ps로 확인해보니, web container가 돌아가지 않고 있음을 확인했다. 서버를 돌리기 위해 필요한 라이브러리가 설치가 안되있었다. 그러니 로컬에서는 돌아가지만 서버는 안돌아가지... 아무튼 이렇게 AWS 인스턴스에서 직접 연결할 수 있다. # SSH 터널링 SSH(Secure SHell)란 원격의 호스트 컴퓨터에 접속하기 위한 인터넷 프로토콜이다. ssh key페어(.pem)를 사용하는 암호화 방식이므로 보안이 강력하.. AWS 배포(3) - https, 도메인 이제 거의 다왔다!! http는 웹 브라우저와 서버 간 요청-응답 처리를 해주는 프로토콜이다. 여기에 보안을 더해준 것이 https이다. 보통 TLS, SSL 프로토콜을 사용해 암호화하여 보안을 지킨다. AWS ALB(Application Loas Balancer)를 이용해 https를 설정했다. # 도메인 구입 도메인을 구입하는 사이트는 여러 곳이 있다. 가비아, AWS, Freenom(무료) 등... 처음에는 내도메인.한국 - 한글 무료 도메인 등록센터 (xn--220b31d95hq8o.xn--3e0b707e) 이곳이 무료여서 사용했는데, 뭐가 문제인지 적용이 잘 안된다... 내도메인.한국 - 한글 무료 도메인 등록센터 한글 무료 도메인 내도메인.한국, 웹포워딩, DNS 등 무료 도메인 기능 제공 x.. AWS 배포(2) - EC2, RDS, github action 저번에 이어서 배포 준비하기~~ 로컬이 아닌 서버에서 돌아가는 파일은 github actions가 실행시켜준다. pr할때마다 action이 새로 실행된다. 수정한 코드를 쉽게 반영할 수 있어서 편리하다..! # deploy.yml .github/workflows/deploy.yml github actions가 실행시켜준다. name: Deploy to EC2 on: push: branches: - dev jobs: build: name: Build runs-on: ubuntu-latest steps: - name: checkout uses: actions/checkout@master - name: create env file run: | touch .env echo "${{ secrets.ENV_VARS.. Network '~~' not found docker에러 때문에 컨테이너를 지웠다가 다시 만들고, 이것저것 건드리다가 저런 오류가 생겼다. 존재하지 않는 네트워크에 컨테이너를 추가하려 했기 때문에, 강제로 만들어준다. docker-compose up --force-recreate docker는 network를 통해 컨테이너끼리 통신한다.(bridge network) network ls를 통해 만들어진 network를 확인할 수 있고, 새로운 네트워크를 지정하고 사용할 수도 있다. 더 많은 명령어는 찾아서 공부하자. https://imjeongwoo.tistory.com/113 [Docker] 도커 컨테이너 Network (bridge, host, none, macvlan) / 네트워크 연결 (connect, disconnect) 도커 컨테이너 .. django.db.utils.OperationalError: (1050, "Table 'django_admin_log' already exists") docker를 배포하면서 생긴 오류. mysql table을 drop해도 계속 뜬다. 원인은 모르겠고 docker의 mysql dbdata가 들어있는 volumes을 모두 삭제해주었다. 삭제가 안되는 기본 volume도 있긴한데 이건 상관없다. 삭제 후 다시 docker를 실행하니까 성공했다. AWS 배포(1) - Django, Nginx, Gunicorn 기본정리 나보다 잘 정리한 사람도 많고...그냥 이해한대로 최대한 정리해봤다. # 배포 아키텍처 WSGI(Web Server Gateway Interface) : Application Server를 호출하여 동적인 요청을 처리할 수 있는 서버 python은 Gunicorn을 사용한다. Django의 runserver와 같은 역할! NGINX : Client에게 받은 정적인 요청을 Gunicorn으로 전달하여 처리하는 Web Server. 즉, 이 프로젝트에서 NGINX는 정적인 요청은 알아서 처리하여 사용자에게 return하고, 동적인 요청을 처리하기 위해 Application Server를 불러올 수 있는 Gunicorn을 통해 처리한다. # Docker OS에 관계없이 내가 만든 프로젝트가 같은 환경.. 이전 1 2 3 다음