일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 피들러
- App
- 개발자 도구 우회
- kotlin
- FastAPI
- WebRTC
- 직링
- 자동화 도구
- netfunnel 우회
- 자동화
- 티켓링크
- 개발자 도구
- GPT
- AWS
- linux
- nginx
- realtime
- 콘서트
- 퍼피티어
- 티켓
- 프록시
- uvicorn
- 예매
- puppeteer
- selenium
- Django
- fiddler
- ubuntu
- WSL
- EC2
- Today
- Total
목록2025/05 (28)
개발 삽질 일지

Kotlin으로 만드는 우당탕탕 버스 도착 알림 앱 [3편]이 글은 UI 이후 실제 데이터를 연결하기 위한 공공 API 연동과 백엔드 구축을 진행하는 과정입니다. 앞선 글에서 화면 UI를 만들고 입력창까지 구현했다면, 이번 편부터는 진짜 앱처럼 동작하게 만들기 위한 핵심 단계로 들어갑니다. 백엔드 서버 구축하기 공공 API는 일반적으로 API Key를 사용합니다. 이 키를 앱 안에 직접 넣으면 보안에 취약해지기 때문에, 중간에 백엔드 서버를 두어 API Key를 안전하게 관리하고, 필요한 데이터만 앱에 전달하는 방식으로 구성할 예정입니다. [Android 앱] │ ▼[FastAPI 서버] │ ▼[공공 데이터 API] 저는 Python 기반의 FastAPI를 사용할 예정입니다..

지난 글에서 Django를 Uvicorn을 통한 ASGI 환경으로 배포하는 과정을 정리했습니다. Django에서도 uvicorn project.asgi:application 명령으로 서버를 띄울 수 있었고, systemd 설정까지 마쳐 서버 재부팅 시 자동 실행되는 구조까지 구성했습니다. 하지만 비동기 코드를 사용하게 되면 오류가 발생했고, 직접 삽질해보니 Django 만으로는 완전한 비동기 처리가 불가능에 가깝다는 결론을 내렸습니다. 비동기 처리를 하기 위해서 결국에 외부 프레임워크나 라이브러리를 사용해야 했습니다. 그래서 저는 Django에서 비동기를 억지로 다루기보다는, FastAPI로 점진적으로 리그레이션하는 방향을 선택했습니다. 다만 FastAPI는 Django처럼 템플릿을 제공하지 않고, ..

Kotlin으로 만드는 우당탕탕 버스 도착 알림 앱 [2편]이 글은 Android Native 앱을 처음 만들어보는 사용자가, Android Studio를 설치하고 Kotlin 기반 프로젝트를 생성해 첫 화면을 띄워보는 과정을 정리한 실습형 가이드입니다. 앞선 글에서 앱의 아이디어와 구조, 기술 스택을 정했다면, 이제 본격적으로 앱을 “만들기 시작”해봅시다. Android Studio란 ? Android Studio는 Google 에서 공식으로 제공하는 안드로이드 앱 개발 도구입니다. Kotlin이나 Java 기반으로 안드로이드 앱을 만들 수 있으며, 디자인, 코드, 빌드, 실행, 디버깅까지 하나의 툴로 해결할 수 있어요. 안드로이드 앱을 만들겠다면 안드로이드 스튜디오 설치는 필수입니다. 안드로이드 스..

Kotlin으로 만드는 우당탕탕 버스 도착 알림 앱 [1편]모든 발전은 불편함에시 시작된다고 생각합니다. 매일매일 반복되는 출근길 속에서 버스나 지하철이 언제 도착하는지 확인하려면 카카오맵에 들어가서 확인을 해야했습니다. 물론 익숙한 일이지만, 매번 앱을 여는 것조차 번거로웠습니다. 저는 그 시간에 핸드폰으로 다른거 하고 싶은데 말이죠. 이 앱은 그런 단순한 불편함에서 시작되었습니다. 원하는 버스 정류장과 노선의 정보를 실시간으로 표시해주는 앱, 그리고 정해진 시간대(평일 오전 7~9시)에만 알람이 울리는 기능을 추가하기로 했습니다. 작고 사소하지만, 저에게는 꽤 실용적인 저만의 출근 도우미가 되어줄 거라 생각합니다. 솔직히 얼마나 걸릴지는 저도 잘 모르겠습니다. 중간에 길을 헤맬 수도 있고, 삽질도..

[3편: Route53 도메인 연결 및 HTTPS 인증서 설정하기]이 글은 AWS EC2 인스턴스에 Route53 도메인 연결 및 HTTPS 인증서를 설정하는 실습형 가이드입니다. 앞선 글에서 EC2와 RDS 환경을 구축과 MobaXterm으로 프로젝트를 배포 완료했다면, 이제 본격적으로 애플리케이션에 이름과 자물쇠를 달아줍시다. Route53 이란? Route53은 AWS에서 제공하는 클라우드 DNS(Domain Name System)입니다. 간단히 말해 사용자가 입력한 도메인 주소를 실제 서버의 IP주소로 변환해주는 서비스입니다. AWS Route53에서는 다양한 도메인을 직접 구입하거나 DNS 라우팅, 상태 확인 등이 가능합니다. Route53에 도메인 연결하기 구입한 도메인을 Route53에 ..

[2편: MobaXterm으로 EC2에 Django 프로젝트 배포하기]이 글은 AWS EC2 인스턴스에 배포할 Django 프로젝트를 MobaXterm을 이용해 원격 접속하고 설정하는 실습형 가이드입니다. 앞선 글에서 EC2와 RDS 환경을 구축했다면, 이제 본격적으로 애플리케이션을 배포해봅시다. MobaXterm이란? MobaXterm은 윈도우에서 리눅스 서버에 쉽게 원격 접속할 수 있는 도구입니다.터미널(Shell) 기능과 함께 SFTP(파일 전송), 텍스트 편집기, X-Server 등을 모두 포함한 올인원 리눅스 원격 접속 도구로, 다음과 같은 장점이 있습니다:.pem 키페어를 쉽게 등록하여 EC2에 SSH 접속 가능접속과 동시에 서버 파일 탐색기 자동 연동텍스트 파일 수정도 GUI 환경에서 바로 ..

[1편: EC2 인스턴스 만들고 RDS 연결까지] 이 글은 AWS에서 EC2 인스턴스를 생성하고, 웹 애플리케이션을 배포하려는 분들을 위한 실습형 가이드입니다."인스턴스는 만들었는데 뭘 해야 할지 모르겠다", "RDS가 뭔지는 알겠는데 연결은 처음이다" 하는 분들께 추천드립니다. AWS 계정은 미리 만들고 와주세요. EC2와 RDS는 뭔가요?EC2 (Elastic Compute Cloud)AWS에서 제공하는 가상 서버(VM)입니다. Ubuntu, CentOS 등 운영체제를 설치하고 직접 서버처럼 다룰 수 있습니다.→ 내 컴퓨터가 아닌 클라우드에서 돌아가는 컴퓨터라고 생각하면 쉽습니다.RDS (Relational Database Service)AWS가 대신 관리해주는 데이터베이스 서버입니다.MySQL, P..

이 글은 Django 개발 서버를 외부에서 접근 가능하게 만들고 싶은 분들을 위한 ngrok 설정 가이드입니다.로컬에서 개발한 Django 웹을 친구에게 보여주거나, 테스트용 URL을 빠르게 생성하고 싶을 때 유용합니다. 저의 경우에는 QA에게 배포 전에 로컬 환경을 보여주기 힘들어서 찾은 대안이 ngrok이였습니다. Ngrok이란? ngrok은 로컬에서 실행 중인 웹 서버를 공개된 HTTPS 주소로 포워딩해주는 서비스입니다. 터널링(Tunneling) 기술 기반개발용 Webhook 테스트, 모바일에서 로컬 서버 접근, 클라이언트에게 시연할 때 자주 사용됨HTTPS 보안 URL을 자동으로 생성해줌배포하지 않고도 로컬 환경을 외부에 공개할 수 있음즉, 배포 전, 로컬 서버를 외부에서 접속 가능하게 만..

0단계: 예비 – 리눅스 실습을 위한 환경 만들기본 시리즈에서는 생존형 리눅스 명령어에 대해서 다룹니다. 자유로운 개발을 하면서 알게 된 생존 리눅스 시작합니다. 꼭 읽어야 할 사람만 읽으세요! 이번 글은 WSL + MSSQL + FreeTDS 연동 가이드입니다.로컬(Windows)에서는 Python과 MSSQL이 잘 붙었는데, 서버(Linux) 배포 시 ODBC 드라이버가 없다고 자꾸 에러에 시달렸습니다. 이 문제를 해결하려고 FreeTDS + pyodbc + ODBC설정이라는 번거로운 조합을 써야만 했습니다. 이 글은 저처럼 MSSQL + Python + Linux 조합에서 연결 때문에 고생한 사람들을 위한 생존형 가이드입니다. MySQL만 쓰신다면 이 글은 굳이 안봐도 됩니다. FreeTDS와 ..

0단계: 예비 – 리눅스 실습을 위한 환경 만들기본 시리즈에서는 생존형 리눅스 명령어에 대해서 다룹니다. 자유로운 개발을 하면서 알게 된 생존 리눅스 시작합니다. WSL이란?WSL (Windows Subsystem for Linux)→ 윈도우 안에서 리눅스를 실행할 수 있게 해주는 기능입니다. 정확히는 윈도우에서 우분투, 데비안, 칼리 리눅스 등 다양한 리눅스 배포판을 설치해서 명령어와 개발환경을 그대로 사용할 수 있게 하는 하위 시스템(Subsystem)입니다. 왜 굳이 리눅스를 써야 하죠? 리눅스는 다음과 같은 이유로 개발자와 서버 관리자의 표준 환경입니다:대부분의 서버는 리눅스로 운영파이썬, 자바, Node.js 등 오픈소스 생태계가 리눅스를 기본으로Docker, Git, SSH 등 개발 도구 대부..