django 15

docker 파일 빌드하고 태그달고 docker hub 로 push 하기 #23

django 프로젝트에 작성했던 Dockerfile 빌드Dockerfile 있는 디렉터리로 이동한다.아래 명령어로 docker build 한다.docker build --platform linux/amd64 -t pubdapi-image-aws:pa0.1 .--platform linux/amd64 부분은 맥북에서 테스트할 때는 뺀다. aws ec2를 linux로 생성하는 경우 맞추기 위한 옵션이다.[+] Building 20.0s (13/13) FINISHED 가 나오면 성공이다.해당 이미지는 docker desktop에서 확인 가능하다.▶ docker desktop 에서 조회되는 이미지 : pubdapi-image-aws:pa0.1vue cli 프로젝트에 작성했던 Dockerfile 빌드Dockerfi..

docker desktop 설치하고 docker hub repository 생성하기 #22

Dockerfile을 생성했다면, 이제 docker desktop을 설치한다. ☞ Dockerfile 생성은 이전 글 참고 vue cli 프로젝트 Dockerfile 생성하기 #20vue cli 프로젝트의 Dockerfile 생성하기vue cli는 기본적인 웹서버 기능도 있기 때문에 로컬 개발 시에는 웹서버가 필요 없었다.하지만 배포를 할 때에는 웹서버를 설치하고 vue 배포 파일들인 dist 폴yuneenelife.tistory.comdocker 사이트 접속☞ https://docker.com/각자 환경에 맞는 버전으로 다운로드 받는다.docker desktop 설치docker desktop app을 설치한다.docker desktop 화면django api 서버인 pubdapi docker 이미지 화..

python django 프로젝트 Dockerfile 생성하기 #21

python django 프로젝트의 Dockerfile 생성하기django framework의 프로젝트를 컨테이너 화하기 위한 설정을 정의한다.이 Dockerfile은 Python 3.12 기반의 컨테이너에서 django 앱을 실행하기 위한 환경을 설정한다.개발환경과 같이 Python 가상환경을 사용해 의존성을 관리하며, Nginx와 같은 외부 웹 서버 없이 django 개발 서버를 사용해 컨테이너 내부에서 애플리케이션을 직접 실행한다.개발환경과 같이 4000 포트를 통해 외부에서 접근 가능하게 하고, 컨테이너가 시작되면 django 서버가 자동으로 시작되게 한다.django requirements.txt 생성dockerfile 을 생성하기 전에 먼저 django 프로젝트에서 개발하면서 설치된 패키지들을..

django, vue cli 이용해서 개발한 국회도서관 자료 검색 화면 및 적용 기술 #18

지금까지 적용된 국회도서관 자료검색 화면과 적용된 기술에 대해 정리한다.국회도서관 자료검색 흐름도 스케치는 어떻게? 국회도서관 자료 검색 vue.js 화면 스케치 #14국회도서관 도서검색은 5개의 흐름으로 진행한다.검색어 입력검색어로 국회도서관 도서검색 API 호출도서검색된 결과 리스트 노출특정 도서 클릭클릭된 도서의 상세정보 노출5개의 흐름을 3개yuneenelife.tistory.com공공데이터 포털 API 사용은 어떻게? 공공데이터 포털 에서 원하는 서비스 API 신청하기 #4공공데이터 포털에서 원하는 API를 검색한다.그러기 위해 먼저 아래 사이트로 접속하여 회원가입한다.☞ https://www.data.go.kr/ 공공데이터 포털국가에서 보유하고 있는 다양한 데이터를『공공데이yuneenelife..

django Test 코드 작성하여 코드 안정성 높이기 #11

Django 프로젝트에서 API의 안정성을 보장하려면 테스트 코드가 필수이다.이 글에서는 Django의 TestCase를 활용하여 API 호출 테스트 코드 작성 방법을 설명한다. ✅ API 테스트 코드 작성 시 유의사항 ✔ 테스트 파일 위치: django의 APP 디렉터리(test.py)에 작성✔ 테스트 자동 탐색: test_로 시작하는 함수명을 사용해야 함✔ 테스트 데이터 관리: 임시 데이터로 진행되며, 실제 데이터베이스에는 저장되지 않음 ✅ test.py에서 API 테스트 코드 작성 test.py 파일을 생성하고 아래와 같이 코드를 작성한다.from django.test import TestCasefrom django.urls import reverseclass APIsTest(TestCase): ..

django rest framework swagger drf_yasg 설정 #10

API 문서화를 위해 **Swagger(drf-yasg)**를 적용하면,API 요청/응답을 한눈에 확인하고 테스트할 수 있다. 이 글에서는 Django REST Framework에서 Swagger를 설정하는 방법을 단계별로 설명한다. ✅ Swagger 설치하기 📍 1. 가상환경 활성화 터미널에서 Django 프로젝트의 가상환경을 활성화한다.source venv/bin/activate # Mac/Linuxvenv\Scripts\activate # Windows 📍 2. drf-yasg 패키지 설치 아래 명령어를 실행하여 drf-yasg를 설치한다.pip install drf-yasg 📌 설치가 완료되면 아래와 같은 메시지가 출력된다.#swagger 설치코드#작업 중인 파이썬 가상환경으로 이동..

django 공공데이터 포털 API 코드, 환경변수 설정, admin 생성하기 #9

Django에서 공공데이터 포털 API를 활용하여 데이터를 조회하고, 환경변수를 설정하며, 관리자 페이지를 생성하는 방법을 정리했다. 1. Django 코드 작성 이번 작업은 기존 프로젝트 구조를 유지하면서 진행한다. 코드 흐름 1. urls.pyAPI 경로는 /api/pubd/상세 URL은 pubdapp 앱 내부의 urls.py에서 관리 2. views.pynanet_search() 함수 생성nanet_post() 함수 생성 3. settings.pyGit에 공유되지 않아야 할 주요 키 값 저장 4. api.pyAPI 호출을 처리하는 함수 모음axios와 연계되는 로직을 포함nanet_api() 함수 생성 5. models.py요청(Request) 및 응답(Response) 데이터를 저장할 모델 Nan..

django APP들을 위한 마이그레이션(migrate) 작업#8

Django 프로젝트에서 기본적으로 필요한 앱인 admin, auth, contenttypes, sessions를 실행하려면 마이그레이션(migrate) 작업이 필요하다. 이 글에서는 가상환경에서 마이그레이션을 수행하는 방법을 설명한다. 1. 마이그레이션(migrate) 실행하기 먼저, Django 가상환경에 진입한 후 마이그레이션 명령어를 실행한다.python manage.py migrate 이 명령어를 실행하면 기본적으로 포함된 Django 앱(admin, auth, contenttypes, sessions)의 데이터베이스 테이블이 자동으로 생성된다. 📌 실행 예제(pubd_api) pubdapi % python3 manage.py migrateOperations to perform: Apply ..

pylint 로 python 가상환경 venv 코드와 vs code 와 연결시키기 #7

Python 프로젝트를 진행할 때, 가상환경(venv)을 설정한 후 VS Code에서 코드를 실행하면 “Python 원본에서 가져오기 실패” 같은 오류가 발생하는 경우가 있다.이 글에서는 pylint를 설치하여 Python 가상환경과 VS Code를 정상적으로 연결하는 방법을 알아본다. 1. 오류 발생 원인 VS Code에서 Python 코드를 실행할 때, 올바른 가상환경을 인식하지 못하면 pylint 등의 코드 검사 도구가 동작하지 않을 수 있다.이를 해결하려면 가상환경에 pylint를 설치하고, VS Code에서 해당 가상환경을 올바르게 설정해야 한다. 2. 해결 방법: 가상환경에 pylint 설치 📌 1) 가상환경(venv) 활성화 먼저, Python 가상환경에 진입한다. Mac/Linux (ba..

django cors 크로스 도메인 오류 해결 #6

Django와 프론트엔드가 서로 다른 도메인 또는 포트에서 실행될 때, CORS(Cross-Origin Resource Sharing) 오류가 발생할 수 있다. 이 글에서는 Django 프로젝트에서 CORS 오류를 해결하는 방법을 알아본다. 1. CORS 오류란? CORS 오류는 브라우저 보안 정책으로 인해 발생한다.백엔드(Django)와 프론트엔드(React, Vue, Angular 등)가 서로 다른 도메인에서 실행될 경우, 브라우저는 기본적으로 교차 출처 요청을 차단한다.  예를 들어,백엔드(Django): http://localhost:8000프론트엔드(Vue.js): http://localhost:8080위와 같이 도메인 또는 포트가 다를 경우, 브라우저는 이를 보안 위협으로 인식하여 요청을 차단..