LogoSEO Jing
  • All Posts
  • SEO Jing
  • okayJing
  • KD Team
  • CLab CoreTeam
  • Study

Contact Me

© 2026 SEOJing. All rights reserved.

프론트엔드스터디배포운영Vercel환경변수빌드모니터링

프론트엔드 스터디 대면 11주차: 배포와 운영 — localhost 밖의 세계

2026년 6월 8일·4분 읽기

1. 개발은 localhost에서 끝나지 않는다

내 컴퓨터에서 잘 돌아가는 것과 실제 사용자가 쓰는 서비스는 다릅니다. localhost는 개발자 한 명을 위한 환경이고, 배포된 서비스는 여러 사용자가 다양한 브라우저와 네트워크에서 접근하는 환경입니다.

오늘은 "코드를 어떻게 짜는가"보다, 만든 코드를 어떻게 서비스로 내보내고 운영하는지 큰 그림을 봅니다.


2. 빌드 — 개발용 코드를 배포용으로 바꾸는 과정

React/Vite/Next 같은 도구는 개발 중에는 빠른 피드백을 위해 dev server를 띄웁니다. 하지만 실제 배포 전에는 코드를 압축하고, 번들을 나누고, 정적 파일을 만들고, 최적화하는 빌드 과정이 필요합니다.

bash
pnpm build

빌드가 깨지는 코드는 배포할 수 없습니다. 그래서 팀에서는 PR을 머지하기 전에 lint, test, build를 CI에서 확인하는 경우가 많습니다.


3. 환경변수 — 환경마다 달라지는 값

로컬, 개발 서버, 운영 서버는 API 주소나 외부 서비스 키가 다를 수 있습니다. 이런 값은 코드에 직접 박지 않고 환경변수로 관리합니다.

env
VITE_API_BASE_URL=https://api.example.com

단, 프론트엔드 번들에 들어가는 환경변수는 사용자가 볼 수 있습니다. 브라우저에 전달되는 값과 서버에서만 쓰는 값을 구분해야 합니다.


4. Vercel/Netlify — Git과 연결된 배포 흐름

요즘 프론트엔드 배포는 GitHub와 연결되는 경우가 많습니다. main 브랜치에 머지하면 자동으로 빌드되고 배포됩니다. PR마다 미리보기 URL이 생기기도 합니다.

이 흐름이 중요한 이유는, 배포가 개발자의 수동 작업이 아니라 팀의 협업 흐름 안에 들어오기 때문입니다.

text
branch 작업 → PR 생성 → preview 배포 → 리뷰 → main 머지 → production 배포

5. 도메인, HTTPS, 캐싱

서비스를 배포하면 주소가 필요합니다. 도메인을 연결하고, HTTPS 인증서를 적용하고, 정적 파일 캐싱을 설정합니다. 사용자는 이 과정을 모르지만, 이 설정들이 서비스 신뢰도와 성능에 영향을 줍니다.

특히 캐싱은 조심해야 합니다. 너무 약하면 매번 느리고, 너무 강하면 새로 배포한 파일이 사용자에게 바로 반영되지 않을 수 있습니다.


6. 배포 후에는 운영이 시작된다

배포는 끝이 아니라 시작입니다. 실제 사용자가 쓰기 시작하면 예외가 생깁니다. 특정 브라우저에서만 깨지고, 특정 API가 느리고, 예상하지 못한 입력이 들어오고, 배포 직후 에러가 늘어날 수 있습니다.

그래서 운영에는 다음 감각이 필요합니다.
  • 에러 로그를 확인할 수 있는가?
  • 사용자가 어떤 화면에서 실패했는지 알 수 있는가?
  • 배포 후 문제가 생기면 이전 버전으로 되돌릴 수 있는가?
  • 성능이 느린 페이지를 찾을 수 있는가?
  • 장애가 났을 때 사용자에게 어떤 안내를 할 것인가?

7. 모니터링 — 사용자가 말하기 전에 알아차리기

Sentry 같은 에러 모니터링 도구, Vercel Analytics, 서버 로그, 브라우저 Performance 지표는 운영에서 중요합니다. 사용자가 "안 돼요"라고 말하기 전에 개발자가 먼저 문제를 발견할 수 있어야 합니다.

프론트엔드 개발자도 이제 배포 후 지표를 볼 줄 알아야 합니다. 페이지가 느린지, 에러가 어디서 나는지, 사용자가 어떤 브라우저에서 많이 실패하는지 알아야 제품을 개선할 수 있습니다.


8. 1학기 마무리 — 우리가 배운 것

이번 학기에는 HTML/CSS/JS/React의 기본 사용법을 비대면에서 배우고, 대면에서는 브라우저 렌더링, AI 시대 개발 방식, 프로젝트 구조, API 계약, Next.js와 웹 렌더링, 팀 협업, 배포와 운영까지 큰 그림을 봤습니다.

프론트엔드 개발은 단순히 화면을 만드는 일이 아닙니다. 사용자가 보는 화면을 중심으로 디자인, 백엔드, 제품, 배포 환경을 연결하는 일입니다. 앞으로 프로젝트를 할 때도 이 관점을 계속 가져가면 좋겠습니다.

포스트 목록

/study/clab-26-1/in-person
파일 11개, 폴더 0개
프론트엔드 스터디 대면 0주차: 프론트엔드 개발자란? 그리고 우리가 배울 것들프론트엔드 스터디 대면 1주차: HTML 마크업과 폼, 그리고 CSS의 시작프론트엔드 스터디 대면 2주차: 폼(Form), CSS 선택자, 그리고 박스 모델프론트엔드 스터디 대면 3주차: 박스 모델 실전, Position과 Flexbox프론트엔드 스터디 대면 6주차(1): HTML/CSS/JS 리마인드와 브라우저 렌더링프론트엔드 스터디 대면 6주차(2): AI 시대의 개발 방식과 프론트엔드 개발자의 위치프론트엔드 스터디 대면 7주차: React 입문과 프로젝트 구조프론트엔드 스터디 대면 8주차: API와 통신 — 프론트엔드와 백엔드의 계약프론트엔드 스터디 대면 9주차: Next.js 렌더링 진화와 웹 퍼포먼스프론트엔드 스터디 대면 10주차: 팀 협업 — Git, PR, 컨벤션, 리뷰 문화프론트엔드 스터디 대면 11주차: 배포와 운영 — localhost 밖의 세계