Streamlit 웹앱 배포

Streamlit 웹앱 만들기 완전 가이드 | AI닷
📚 AI닷 실습 교재 2026

Streamlit 웹앱
완전 정복 가이드

코드 작성부터 인터넷 배포까지!
초보자도 따라할 수 있는 단계별 완전 가이드

① 코드 작성
② 폴더/파일 만들기
③ VS Code 붙여넣기
④ 터미널 실행
⑤ GitHub 저장
⑥ Streamlit 배포
📍 대상 AI 입문자 · 일반 시민
⏱️ 소요시간 약 60~90분
🛠️ 사용 도구 VS Code · GitHub · Streamlit
🏫 제작 AI닷 (AI DOT) · 진해
🗺️

전체 과정 한눈에 보기

이 교재에서 배울 6단계 과정입니다


코드 작성
AI로 생성

폴더·파일
탐색기

VS Code
붙여넣기

터미널
실행·배치

GitHub
저장

배포 완료
🌍 공개
💡 쉬운 비유로 이해하기

요리로 비유하면?
① 레시피 작성 → ② 주방(폴더) 준비 → ③ 재료(코드) 담기 → ④ 요리 시작(실행) → ⑤ 레시피북(GitHub)에 저장 → ⑥ 식당 오픈(배포) 🍽️

1

코드 작성하기

Claude AI를 이용해서 앱 코드를 자동으로 만드는 방법

🤖 코드가 뭔가요?

코드(Code)는 컴퓨터에게 내리는 명령어 모음이에요. 우리가 읽는 글처럼 컴퓨터도 코드를 읽고 그대로 실행합니다. 마치 악보가 있으면 누구나 같은 음악을 연주할 수 있듯, 코드가 있으면 누구나 같은 앱을 만들 수 있어요!

💡

바이브코딩이란? 코드를 직접 작성하는 대신, AI(클로드, GPT 등)에게 원하는 것을 말로 설명하면 AI가 코드를 대신 만들어주는 방식입니다. 코딩을 몰라도 앱을 만들 수 있어요!

📝 Claude에게 요청하는 방법
  • claude.ai 접속

    브라우저에서 claude.ai 접속 후 로그인

  • 원하는 앱 설명하기

    채팅창에 만들고 싶은 앱을 자세히 설명 (예: “CSV 파일을 업로드하면 자동으로 분석하는 Streamlit 앱 만들어줘”)

  • 코드 받기

    Claude가 완성된 코드를 생성해 줌 → 이 코드를 복사

이번 실습에서 만든 앱: CSV/Excel 파일을 업로드하면 판매·출석·만족도 데이터를 자동으로 분석하고, 그래프와 Word 보고서를 생성하는 웹앱

📦 우리 앱에 필요한 라이브러리

라이브러리 = 남이 만들어 놓은 기능 묶음 (무료로 가져다 쓸 수 있어요)

라이브러리하는 일비유
streamlit웹 앱 화면 만들기건물 뼈대
pandas표(데이터) 처리엑셀 기능
matplotlib그래프 그리기차트 도구
openpyxlExcel 파일 읽기Excel 열쇠
python-docxWord 문서 만들기Word 기능
2

윈도우 탐색기에서 폴더·파일 만들기

코드를 담을 그릇(폴더)과 파일을 준비합니다

📁 폴더와 파일의 관계
💡 비유로 이해하기

폴더 = 서랍장 📦
파일 = 서랍 안에 넣는 종이 📄

auto_report_streamlit 폴더 안에 app.py, requirements.txt 파일을 넣어두는 것!

🗂️ 만들어야 할 구조
📁 auto_report_streamlit  ← 메인 폴더
    📄 app.py         ← 메인 앱 코드
    📄 requirements.txt  ← 필요한 라이브러리 목록
    📄 run.bat        ← 더블클릭 실행파일
    📄 README.txt     ← 사용 설명서
📋 단계별 만들기
  • 폴더 만들기

    바탕화면 또는 원하는 위치에서 마우스 우클릭 → 새로 만들기 → 폴더 → 이름: auto_report_streamlit

  • 파일 확장명 보이게 설정

    탐색기 상단 보기파일 확장명 체크 ON
    이렇게 해야 .txt → .py로 바꿀 수 있어요

  • app.py 파일 만들기

    폴더 안에서 우클릭 → 새로 만들기 → 텍스트 문서 → 이름을 app.py로 변경
    ⚠️ .txt 지우고 .py로 바꿔야 해요!

  • requirements.txt 파일 만들기

    같은 방법으로 requirements.txt 파일 생성

📁 auto_report_streamlit
🗂️ 내 PC → 바탕화면 → auto_report_streamlit

📄 app.py         ← 새로 만든 파일
📄 requirements.txt  ← 새로 만든 파일
3

VS Code에서 코드 붙여넣기

VS Code는 코드를 편집하는 전문 프로그램입니다 (무료)

💻 VS Code가 뭔가요?
💡 비유

메모장으로도 코드를 쓸 수 있지만…
VS Code는 코드 전용 워드프로세서예요!
맞춤법 검사, 자동완성, 색깔 구분 등 편리한 기능이 가득 💪

📋 VS Code 설치 (아직 없다면)
  • 다운로드

    구글에서 VS Code 다운로드 검색 → code.visualstudio.com 접속

  • 설치

    다운로드한 파일 실행 → 다음다음 클릭 → 설치 완료!

  • 한국어 설정 (선택)

    VS Code 열기 → Ctrl+Shift+P → “Korean” 검색 → 한국어 팩 설치

📂 VS Code로 폴더 열기
  • 방법 1: 탐색기에서 바로 열기 (가장 쉬움!)

    auto_report_streamlit 폴더에서 마우스 우클릭“Code(으)로 열기” 클릭

  • 방법 2: VS Code 메뉴에서 열기

    VS Code 실행 → 파일 → 폴더 열기 → 폴더 선택

✂️ 코드 붙여넣기
  • Claude에서 코드 전체 복사

    Claude 채팅창에서 코드 블록 위에 있는 📋 복사 버튼 클릭
    또는 코드 전체 선택(Ctrl+A) → 복사(Ctrl+C)

  • VS Code에서 app.py 클릭

    왼쪽 파일 목록에서 app.py 클릭 → 편집 화면 열림

  • 붙여넣기 후 저장

    편집 화면 클릭 → Ctrl+V (붙여넣기) → Ctrl+S (저장)

  • requirements.txt도 작성

    requirements.txt 클릭 후 아래 내용 붙여넣기 → Ctrl+S

requirements.txt
streamlit pandas openpyxl python-docx matplotlib xlrd
auto_report_streamlit — VS Code
app.py
requirements.txt
1# 자동 반응형 데이터 보고서 생성기
2import streamlit as st
3import pandas as pd
4import matplotlib.pyplot as plt
5# … (1000줄 이상의 코드)
4

터미널에서 실행하기

터미널로 라이브러리 설치 후 앱을 실행합니다

🖥️ 터미널이 뭔가요?
💡 비유

평소엔 마우스로 클릭클릭 → 그림(GUI) 방식
터미널은 키보드로 명령어 직접 입력 → 텍스트 방식

식당에서 메뉴판 손가락으로 가리키기 = 마우스 클릭
“김치찌개 주세요” 직접 말하기 = 터미널 명령어

⌨️ VS Code 터미널 열기
⌨️

단축키: Ctrl + ` (백틱 = 키보드 숫자 1 왼쪽 키)
또는 상단 메뉴 → 터미널 → 새 터미널

터미널이 VS Code 아래쪽에 검은 창으로 열립니다.

📋 실행 명령어 (순서대로 입력)

① 폴더 이동 (맨 처음 1회)

TERMINAL
cd auto_report_streamlit # cd = change directory = 폴더로 이동

② 라이브러리 설치 (최초 1회만)

TERMINAL
pip install -r requirements.txt # pip = Python 앱스토어 # install = 설치해줘 # -r requirements.txt = 이 목록에 있는 것들 전부

③ 앱 실행!

TERMINAL
streamlit run app.py # streamlit run = Streamlit으로 실행해줘 # app.py = 이 파일을
🎉

성공 메시지:
Local URL: http://localhost:8501
Network URL: http://192.168.x.x:8501
→ 브라우저가 자동으로 열립니다!

⚠️

앱 종료할 때: 터미널에서 Ctrl + C 누르기
검은 창을 닫으면 앱도 같이 꺼져요!

🦇 run.bat 파일 만들기 (더블클릭 실행용)

매번 터미널에 명령어 입력하기 번거롭죠? run.bat 파일을 만들면 더블클릭 한 번으로 자동 실행!

💡 .bat 파일이란?

bat = batch(배치) = 묶음
명령어 여러 개를 묶어서 순서대로 자동 실행하는 파일
마치 “아침 루틴을 자동화”하는 것처럼! ⏰

🖥️ 방법 1
터미널 명령어로 만들기
🤖 방법 2
Claude Code 채팅창으로 만들기

🖥️ 방법 1 — VS Code 터미널 명령어

  • VS Code 터미널 열기

    단축키 Ctrl + ` 또는 상단 메뉴 → 터미널 → 새 터미널

  • 아래 명령어 전체 복사 → 붙여넣기 → Enter!

    명령어 한 줄이 run.bat 파일을 자동으로 완성시켜줘요

TERMINAL — 복사 붙여넣기 후 Enter!
echo @echo off > run.bat & echo echo ===================== >> run.bat & echo echo 자동 보고서 생성기! >> run.bat & echo echo ===================== >> run.bat & echo echo [1/2] 라이브러리 설치 중… >> run.bat & echo pip install -r requirements.txt >> run.bat & echo echo [2/2] 앱 실행 중… >> run.bat & echo start “” http://localhost:8501 >> run.bat & echo streamlit run app.py >> run.bat & echo pause >> run.bat
💡

명령어 핵심 원리:
echo 내용 > run.bat = 새 파일 만들고 첫 줄 쓰기
echo 내용 >> run.bat = 기존 파일에 줄 추가하기
& = 명령어를 이어서 실행

  • 파일 생성 확인

    TERMINAL
    dir run.bat # run.bat 이름과 파일 크기가 나오면 성공! # 또는 탐색기에서 폴더 열어서 확인 🎉

🤖 방법 2 — Claude Code 채팅창 프롬프트

  • VS Code 오른쪽 Claude Code 패널 열기

    VS Code 왼쪽 메뉴에서 🤖 Claude Code 아이콘 클릭
    또는 상단 메뉴 → 보기 → Claude Code

  • 아래 프롬프트를 입력창에 붙여넣기 → Enter!

    Claude가 자동으로 run.bat 파일을 만들어줘요

CLAUDE CODE 채팅창 — 복사 붙여넣기!
현재 폴더에 run.bat 파일을 만들어줘. 조건: – 더블클릭하면 자동으로 실행되게 해줘 – pip install -r requirements.txt 먼저 실행 – 그 다음 streamlit run app.py 실행 – 브라우저에서 http://localhost:8501 자동으로 열리게 – 오류 발생 시 멈추고 오류 메시지 보여줘 – 한글로 안내 메시지 표시해줘 – 앱 종료 방법도 안내해줘
🤖

Claude Code가 자동으로 해주는 것:
① run.bat 파일 내용 자동 작성
② 현재 폴더에 파일 자동 저장
③ 파일 생성 완료 확인까지!
→ 터미널 명령어 몰라도 OK 😊

  • Claude Code가 만들어준 run.bat 확인

    왼쪽 파일 목록에 run.bat이 생겼으면 성공!
    클릭해서 내용 확인 가능

📄 완성된 run.bat 내용 (두 방법 모두 동일)

run.bat — 완성된 파일 내용
@echo off echo ============================================= echo 자동 보고서 생성기 시작! echo ============================================= echo. echo [1/2] 라이브러리 설치 중… pip install -r requirements.txt if errorlevel 1 ( echo [오류] 설치 실패! requirements.txt 확인하세요. pause exit /b 1 ) echo. echo [2/2] 앱을 실행합니다… echo 브라우저에서 http://localhost:8501 열립니다! start “” http://localhost:8501 streamlit run app.py echo. echo 앱을 종료하려면 이 창을 닫거나 Ctrl+C 누르세요. pause
🎉

run.bat 더블클릭 한 번이면!
라이브러리 자동 설치 → 앱 자동 실행 → 브라우저 자동 오픈
터미널 명령어 전혀 몰라도 사용 가능해요!

📊 두 방법 비교

항목🖥️ 터미널 명령어🤖 Claude Code
난이도보통 (명령어 복사)✅ 쉬움 (말로 요청)
속도✅ 빠름 (즉시)보통 (AI 응답 대기)
커스터마이징명령어 수정 필요✅ 말로 요청 가능
추천 대상명령어 익숙한 분초보자 · 편리함 원할 때
🌐 실행 후 브라우저 주소 2종류
주소누가 접속 가능?용도
http://localhost:8501 내 PC에서만 혼자 테스트
http://192.168.x.x:8501 같은 와이파이 연결 시 모두 수업 시연용
📱

수업 활용 팁: Network URL을 칠판에 적어두면 수강생들이 스마트폰으로 접속 가능! (같은 와이파이 필요)

5

GitHub에 저장하기

코드를 인터넷 창고(GitHub)에 저장하는 방법

📦 GitHub가 뭔가요?
💡 비유

GitHub = 코드 전용 구글 드라이브

📁 구글 드라이브 → 문서·사진 저장
🐙 GitHub → 코드 저장 + 버전 관리

언제 어디서든 코드를 꺼낼 수 있고
“예전 버전으로 되돌리기”도 가능해요!

💰

GitHub 기본 사용은 무료! 코드 저장, 배포 연동 모두 무료로 이용 가능합니다.

📋 GitHub 저장 전체 과정
  • github.com 접속 → 계정 만들기

    Sign up → 이메일, 비밀번호 입력 → 계정 생성

  • 새 저장소(Repository) 만들기

    로그인 후 오른쪽 상단 + → New repository 클릭

  • 저장소 정보 입력

    Repository name: auto-report-streamlit
    Visibility: Public 선택 (무료 배포 필수!)
    Create repository 클릭

  • 파일 업로드

    uploading an existing file 링크 클릭
    → 파일 4개 드래그 앤 드롭
    Commit changes 클릭

🐙 gamjagf / auto-report-streamlit  Public
📄 app.py Add files via upload · 1 minute ago
📄 requirements.txt Add files via upload · 1 minute ago
📄 run.bat Add files via upload · 1 minute ago
📄 README.txt Add files via upload · 1 minute ago
🔄 VS Code 메뉴로 업로드하는 방법 (터미널 없이!)
  • 소스 제어 아이콘 클릭

    VS Code 왼쪽 메뉴에서 🔀 아이콘 클릭 (단축키: Ctrl+Shift+G)

  • “리포지토리 게시” 클릭

    소스 제어 패널에서 리포지토리 게시 버튼 클릭

  • GitHub 로그인

    브라우저 팝업에서 GitHub 로그인 → VS Code로 자동 복귀

  • Public 선택 후 게시

    Public 선택 → 게시 클릭 → 완료!

🔄

나중에 코드 수정 후 다시 올릴 때:
소스 제어 클릭 → 메시지 입력 → ✓ 커밋 → 🔄 변경 내용 동기화
단 3번 클릭으로 끝!

6

Streamlit Cloud 배포하기

전 세계 누구나 접속할 수 있는 인터넷 주소를 만듭니다

🌍 배포(Deploy)가 뭔가요?
💡 비유

지금까지는 내 집 주방에서만 요리 가능 = 내 PC에서만 실행

배포 = 식당 오픈! 🍽️
인터넷에 올려서 전 세계 누구나 접속 가능하게 만드는 것

Streamlit Cloud = 무료 식당 자리를 빌려주는 곳

📋 배포 단계
  • share.streamlit.io 접속

    브라우저에서 share.streamlit.io 접속

  • GitHub로 로그인

    Sign in with GitHub 클릭 → GitHub 계정으로 로그인

  • 새 앱 만들기

    Create appDeploy a public app from GitHub 선택

  • 정보 입력

    Repository: GAMJAGF/auto-report-streamlit
    Branch: main
    Main file path: app.py

  • Deploy! 클릭 → 3~5분 기다리기

    자동으로 라이브러리 설치 후 앱 실행 → 완료!

🎉 배포 완료!

https://gamjagf-auto-report-streamlit.streamlit.app

이 주소를 카톡, 문자, 이메일로 보내면
전국 누구나 스마트폰으로 접속 가능!

📊 배포 방식 비교
방식접속 범위조건추천
localhost:8501 내 PC만 항상 가능 개발·테스트
192.168.x.x:8501 같은 와이파이 PC 켜져있을 때 수업 시연
streamlit.app 전 세계! 항상 (무료) ✅ 배포용
🔄 앱 업데이트 방법 (수정 후 재배포)
VS CODE 소스 제어
# 코드 수정 후 1. VS Code 왼쪽 🔀 소스 제어 클릭 2. 메시지 입력: “버튼 색상 변경” 3. ✓ 커밋 클릭 4. 🔄 변경 내용 동기화 클릭 # → GitHub에 자동 업로드 # → Streamlit이 자동으로 새 버전 반영!

자주 묻는 질문 (FAQ)

수업 중 자주 나오는 질문들을 모았습니다

검은 창(터미널)을 닫으면 앱이 꺼져요
맞아요! 터미널(검은 창)이 서버 역할을 해요. 내 PC에서 실행할 때는 터미널을 켜둬야 해요. Streamlit Cloud에 배포하면 터미널 없이도 항상 켜져 있어요!
pip install이 너무 오래 걸려요
최초 1회만 오래 걸려요. 라이브러리를 인터넷에서 다운로드하는 과정이라 시간이 걸립니다. 2번째부터는 이미 설치되어 있어서 바로 실행돼요!
브라우저가 자동으로 안 열려요
주소창에 직접 localhost:8501을 입력하면 돼요!
빨간 오류 메시지가 떴어요
당황하지 마세요! 오류 메시지를 복사해서 Claude에게 붙여넣으면 해결 방법을 알려줘요. Claude는 오류 해결 전문가예요 😊
Streamlit 앱이 느리게 열려요 (30분 후)
무료 플랜은 30분 동안 아무도 접속하지 않으면 “슬립 모드”로 들어가요. 처음 접속할 때 1~2분 기다리면 다시 깨어납니다!
GitHub에 올리면 코드가 공개되나요?
Public으로 올리면 누구나 코드를 볼 수 있어요. 비밀 내용(API 키, 비밀번호 등)은 절대 올리지 마세요. 일반 앱 코드는 공개해도 괜찮아요!
.bat 파일이 실행이 안 돼요
Python이 설치되어 있어야 해요! python.org에서 Python을 먼저 설치하고 “Add to PATH”를 꼭 체크하세요.
📌

전체 과정 최종 정리

오늘 배운 내용을 한 장에 정리했습니다

단계 할 일 도구 핵심 키워드
STEP 1 코드 작성 Claude AI 바이브코딩, 프롬프트
STEP 2 폴더·파일 만들기 윈도우 탐색기 폴더, .py, .txt
STEP 3 코드 붙여넣기 VS Code Ctrl+V, Ctrl+S
STEP 4 실행하기 터미널 pip install, streamlit run, .bat
STEP 5 GitHub 저장 github.com Repository, Public, Commit
STEP 6 인터넷 배포 Streamlit Cloud Deploy, streamlit.app

🎊 수고하셨습니다!

코드 한 줄 몰라도
AI와 함께라면 누구나 웹앱을 만들고 배포할 수 있습니다!

AI닷 (AI DOT) · 진해문화센터 2026 봄캠프

📊

Streamlit 웹앱 완전 정복 가이드

AI닷 (AI DOT) · 창원 진해 · 2026 AI 무료공개 봄캠프

매주 토요일 | 진해문화센터 컨벤션홀 | 4월 18일 ~ 5월 16일

Made with ❤️ Claude AI + Streamlit + GitHub