본문 바로가기
컴퓨터 활용/노년에 즐기는 코딩

오유권 문학관, OUKWON SHORTS 개설

by easyfly 2025. 7. 31.
반응형

오유권 문학관, OUKWON SHORTS 개설

'영산포 출신 소설가 오유권의 문학 세계 아카이브'를 위한 사이트를 개설하고자 합니다. 클라우드 서버를 이용한 디렉터리 구조는 다음과 같습니다.

✅ 1. 전체 구조 예시 (oukwon.kr 프로젝트 기준)

/home/user/

├── oukwon/                     # 프로젝트 루트 디렉터리
│   ├── config/                 # Django 프로젝트 디렉터리 (settings.py 포함)
│   │   ├── __init__.py
│   │   ├── settings.py
│   │   ├── urls.py
│   │   └── wsgi.py             # Gunicorn용 진입점
│   │
│   ├── apps/                   # 앱들을 모아두는 폴더
│   │   ├── core/               # 예: 공통 기능 앱
│   │   ├── oukwon/             # 예: 오유권 단편 관련 기능
│   │   └── users/              # 사용자 관련 기능
│   │
│   ├── manage.py
│   └── requirements.txt        # 패키지 목록

├── staticfiles/                # collectstatic 결과 (nginx가 참조)
├── media/                      # 사용자 업로드 파일
├── venv/                       # 파이썬 가상환경
├── .env                        # 환경 변수 파일 (비밀키, DB 등)
├── gunicorn.service            # systemd 서비스 파일
└── nginx/
    └── oukwon.conf             # nginx 설정 파일

 

 


✅ 2. 구성 요소 설명

🔸 oukwon/

Django 프로젝트 전체를 담는 루트 디렉터리입니다.
GCP VM 내부에서 관리 및 배포 편의성을 위해 하나의 디렉터리에 구성합니다.

🔸 config/

django-admin startproject config로 생성된 Django 프로젝트 디렉터리입니다.
settings.py, urls.py, wsgi.py, asgi.py 등이 포함됩니다.

이름은 관례에 따라 config로 합니다. oukwon으로 하면 앱과 헷갈릴 수 있어 구분을 위해 다르게 짓습니다.

🔸 apps/

startapp으로 만든 앱들을 모아둡니다. users, oukwon, common 등의 서브 디렉터리가 됩니다.
관리 편의상 앱을 분리하면 확장성과 유지보수에 좋습니다.

🔸 venv/

Python 가상환경. 시스템 전체 Python과 충돌을 방지하며 독립적으로 운영됩니다.

🔸 .env

보안상 필요한 환경 변수 저장 (비밀키, DB 비밀번호 등).
settings.py에서는 os.getenv()로 불러옵니다.

🔸 staticfiles/, media/

collectstatic으로 정적 파일을 모아둔 폴더, 업로드 파일을 저장하는 폴더입니다.
nginx가 이 경로를 참조합니다.

🔸 gunicorn.service

Gunicorn을 systemd로 관리하기 위한 서비스 파일입니다.

🔸 nginx/

nginx 설정을 따로 분리해 저장합니다.
도메인별 설정을 넣을 수 있어 관리에 유리합니다.


 

디지털 문학관이 개설되는 과정을 소개하면서 장고 프로젝트 진행을 공유하고자 합니다.

반응형

댓글