Flutter ๊ธฐ๋ฐ์ ๋ฉด์ ์งํ ์ฑ - DevOps ๋ฐ ๋ฐฑ์๋ ์ธํ๋ผ ๊ตฌํ ์ค์ฌ
Flutter์ Vue3/Nuxt3๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ ๋ฉด์ ์ฑ์ผ๋ก, ๋ฉด์ ์์ ๋ฉด์ ๊ด ๊ฐ์ ์ธํฐ๋ทฐ๋ฅผ ์ค์๊ฐ์ผ๋ก ์งํํ ์ ์์ต๋๋ค. ๋ณธ ํ๋ก์ ํธ์์๋ DevOps ์์ง๋์ด๋ก์ ๋ค์๊ณผ ๊ฐ์ ์ธํ๋ผ, CI/CD, ๋ฐฐํฌ, ๋ชจ๋ํฐ๋ง, ํ์ ํ๊ฒฝ์ ๊ตฌ์ถ ๋ฐ ์ด์ํ์์ต๋๋ค.
Flutter,Dart: ๋ชจ๋ฐ์ผ ์ฑ ๊ฐ๋ฐVue3,Nuxt3,Vuetify3: ์น ๊ธฐ๋ฐ ๊ด๋ฆฌ์ ๋๊ตฌ ๋ฐ ๋์๋ณด๋ ๊ตฌํTypescript,HTML5/CSS3,Javascript
Python,Django,FastAPI: ์ฌ์ฉ์ ์ธ์ฆ, ๋ฉด์ ๋ก์ง, OpenAI API ์ฐ๋MySQL,FAISS: ๋ฐ์ดํฐ ์ ์ฅ ๋ฐ ๋ฒกํฐ ๊ฒ์ ๊ธฐ๋ฐ ์ ์ฌ ์ง๋ฌธ ์ ๊ณต
AWS EC2,S3,CloudFront,Route53: ๋ฐฑ์๋ ์๋ฒ, ์ ์ ์์ฐ ๋ฐฐํฌ, DNS ๊ด๋ฆฌGithub Actions: CI/CD ์๋ํ (Flutter ๋น๋, ๋ฐฑ์๋ ๋ฐฐํฌ ํ์ดํ๋ผ์ธ ๊ตฌ์ถ)OAuth,Domain Driven Design,Agile Methodologies
Github,Slack,Notion,Discord: ์ด์ ๊ด๋ฆฌ, ๋ฆด๋ฆฌ์ฆ ํ์ , ์ปค๋ฎค๋์ผ์ด์
Github Actions๋ฅผ ํ์ฉํด Flutter ์ฑ ๋น๋ โ Google Play ๋ฐฐํฌ ์๋ํ- Django/FastAPI ๋ฐฑ์๋์ Lint/Test โ Docker Build โ EC2 ๋ฐฐํฌ ์๋ํ
EC2: ์น/๋ฐฑ์๋ ์๋ฒ ํธ์คํS3 + CloudFront: ์ ์ ๋ฆฌ์์ค ๋ฐ Flutter ์น ๋ฐฐํฌRoute53: ๋๋ฉ์ธ ๊ด๋ฆฌ ๋ฐ HTTPS ์ ์ฉIAM ์ ์ฑ: ๋ณด์ ์ต์ ๊ถํ ์ค์
- OpenAI API๋ฅผ ํ์ฉํ์ฌ ๋ฉด์ ์ง๋ฌธ ์๋ ์์ฑ ๋ฐ ํ๊ฐ ๊ธฐ๋ฅ ๊ตฌํ
- FAISS ๊ธฐ๋ฐ ์ ์ฌ ์ง๋ฌธ ๊ฒ์ ๊ธฐ๋ฅ ์ฐ๋
- Notion์ ํตํ ๊ธฐ์ ๋ฌธ์ ๋ฐ API ๋ช ์ธ ๊ด๋ฆฌ
- Slack/Discord์ผ๋ก CI ์ํ ์๋ฆผ ๋ฐ ์ฝ๋ ๋ฆฌ๋ทฐ ์ํต
- ์ฑ ๋ด์์ ์ค์๊ฐ ๋ฉด์ ๊ธฐ๋ฅ
- ์ง๋ฌธ ์ถ์ฒ ๋ฐ ๋ฉด์ ํ๊ฐ
- ๊ด๋ฆฌ์ ํ์ด์ง (Nuxt3 ๊ธฐ๋ฐ)์์ ๋ฉด์ ๊ด๋ฆฌ
- ์ง๋ฌธ ๋ฐ์ดํฐ ๊ธฐ๋ฐ ๊ฒ์ ๋ฐ ์ถ์ฒ ๊ธฐ๋ฅ (FAISS)
- ์ ์ฒด ๋ฐฐํฌ ํ์ดํ๋ผ์ธ ์ค๊ณ ๋ฐ ๊ตฌ์ถ
- CI/CD ์๋ํ ๋ฐ ๋น๋ ์ํ ๋ชจ๋ํฐ๋ง ์ค์
- AWS ๊ธฐ๋ฐ ์ธํ๋ผ ๊ตฌ์ถ ๋ฐ ๋ณด์ ๊ตฌ์ฑ
- ํ์ ํ๊ฒฝ ๋ฐ ์ฝ๋ ๊ด๋ฆฌ ์ฒด๊ณ ์ ๋ฆฝ
| ํญ๋ชฉ | ๋ด์ฉ |
|---|---|
| ์ฑ ๋ฐฐํฌ | Google Playstore ๋ฑ๋ก |
| ๋ฐฑ์๋ ์๋ฒ | AWS EC2 + Nginx + Gunicorn |
| ์ ์ ํ์ผ | AWS S3 + CloudFront |
| ๋๋ฉ์ธ | AWS Route53 |
| ์ธ์ฆ ๋ฐฉ์ | OAuth2 ๊ธฐ๋ฐ ๋ก๊ทธ์ธ |
| AI API | OpenAI GPT ์ฐ๋ |