Azure App Service

웹 앱을 관리형으로 배포한다. F1은 상시 무료이고 Linux B1은 East US $0.017/시간이다.

···
html
<div class="platform-demo">
    <div class="platform-grid">
      <section class="platform-panel benefit"><h2><b>1</b><span class="ko">무엇을 해주나</span><span class="en">What it does</span></h2><div class="flow"><span class="flow-chip active" data-flow="0"><span class="ko">웹 앱 배포</span><span class="en">Deploy web app</span></span><span class="flow-arrow">→</span><span class="flow-chip" data-flow="1"><span class="ko">App Service가 호스팅</span><span class="en">App Service hosts it</span></span><span class="flow-arrow">→</span><span class="flow-chip" data-flow="2"><span class="ko">공개 URL로 접속</span><span class="en">Open public URL</span></span></div><p class="result"><span class="ko">VM을 직접 관리하지 않고 웹 앱 배포</span><span class="en">Deploy a web app without managing a VM</span></p></section>
      <section class="platform-panel free"><h2><b>2</b><span class="ko">무료로 어디까지</span><span class="en">Free tier</span></h2><div class="free-metrics"><div class="free-metric"><div class="metric-line"><span><span class="ko">상시 무료 F1 앱 수</span><span class="en">Always-free F1 apps</span></span><strong>10</strong></div><div class="meter"><i style="width:50%"></i></div></div><div class="free-metric"><div class="metric-line"><span><span class="ko">상시 무료 F1 CPU/일</span><span class="en">Always-free F1 CPU/day</span></span><strong><span class="ko">60분</span><span class="en">60 min</span></strong></div><div class="meter"><i style="width:50%"></i></div></div></div></section>
      <section class="platform-panel price"><h2><b>3</b><span class="ko">넘으면 얼마</span><span class="en">Beyond free</span></h2><div class="price-core"><div class="price-usage"><span><span class="ko">별도 유료 Linux B1 실행/월</span><span class="en">Separate paid Linux B1 runtime/mo</span></span><strong id="platform-usage"></strong></div><input id="platform-slider" type="range" min="0" max="73" value="73" aria-label="Separate paid Linux B1 runtime/mo"><div class="monthly"><strong id="platform-cost"></strong><small><span class="ko">/월</span><span class="en">/month</span></small></div><p class="price-note"><span class="ko">East US · F1은 1 GB 저장·SLA 없음 · B1 네트워크 별도</span><span class="en">East US · F1 has 1 GB storage/no SLA · B1 network extra</span></p></div></section>
    </div><div class="platform-source"><span class="ko">2026-10-06 공식 가격 기준 · 단순화</span><span class="en">Official prices as of 2026-10-06 · simplified</span></div>
  </div>
css
.platform-demo{width:min(98vw,1160px);height:min(98vh,368px);padding:clamp(4px,1.3vmin,10px);border:1px solid var(--line);border-radius:12px;background:var(--surface);display:flex;flex-direction:column;gap:4px;overflow:hidden;font:500 clamp(13px,3.6vmin,16px)/1.3 ui-sans-serif,-apple-system,sans-serif}
.platform-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(4px,1vmin,9px);flex:1;min-height:0}
.platform-panel{border:1px solid var(--line);border-radius:8px;min-width:0;padding:clamp(6px,1.5vmin,14px);display:flex;flex-direction:column;overflow:hidden}
.platform-panel h2{margin:0;display:flex;align-items:center;gap:7px;font-size:clamp(15px,4vmin,18px);font-weight:700;white-space:nowrap}
.platform-panel h2 b{display:grid;place-items:center;flex:none;width:1.45em;height:1.45em;border:1px solid var(--line);border-radius:50%;font-size:.85em;color:var(--accent)}
.benefit{justify-content:space-between}.flow{display:flex;align-items:center;justify-content:center;gap:3px;min-height:0;flex:1}.flow-chip{border:1px solid var(--line);border-radius:5px;padding:5px 4px;text-align:center;font-size:clamp(12px,3.6vmin,15px);overflow-wrap:anywhere;min-width:0;max-width:30%;transition:border-color .2s,color .2s}.flow-chip.active{border-color:var(--accent);color:var(--accent);font-weight:750}.flow-arrow{color:var(--muted);flex:none}.result{margin:0;font-size:clamp(15px,4vmin,18px);font-weight:700;overflow-wrap:anywhere;color:var(--fg)}
.free-metrics{display:flex;flex-direction:column;justify-content:center;gap:clamp(9px,3vmin,24px);flex:1}.metric-line{display:flex;justify-content:space-between;gap:6px;align-items:baseline;font-size:.86em}.metric-line span{color:var(--muted)}.metric-line strong{font-variant-numeric:tabular-nums;text-align:right}.meter{margin-top:6px;height:7px;border:1px solid var(--line);border-radius:6px;overflow:hidden}.meter i{display:block;height:100%;background:var(--accent);animation:meter-in .8s ease-out both}@keyframes meter-in{from{width:0}}
.price-core{display:flex;flex-direction:column;justify-content:center;flex:1;min-height:0}.price-usage{display:flex;align-items:baseline;justify-content:space-between;gap:5px;font-size:.83em}.price-usage span{color:var(--muted)}.price-usage strong{font-variant-numeric:tabular-nums;text-align:right}.price input{width:100%;margin:clamp(8px,2vmin,15px) 0;accent-color:var(--accent)}.monthly{display:flex;align-items:baseline;gap:4px}.monthly strong{font-size:clamp(27px,8vmin,38px);color:var(--accent);font-variant-numeric:tabular-nums}.monthly small{color:var(--muted)}.price-note{margin:4px 0 0;color:var(--muted);font-size:.74em;overflow-wrap:anywhere}.platform-source{text-align:right;color:var(--muted);font-size:clamp(8px,1.3vmin,10px);line-height:1.1}
@media(min-width:700px){.flow{flex-direction:column;gap:clamp(3px,1vmin,7px);padding:clamp(6px,1.5vmin,12px) 0}.flow-chip{display:grid;place-items:center;width:min(100%,290px);max-width:none;flex:1;max-height:clamp(42px,12vmin,56px);padding:clamp(7px,1.8vmin,11px);font-size:clamp(15px,4vmin,19px);line-height:1.2}.flow-arrow{transform:rotate(90deg);font-size:clamp(15px,4vmin,19px);line-height:1}.result{font-size:clamp(19px,5vmin,24px);line-height:1.25}.free-metrics{gap:clamp(12px,4vmin,28px)}.free-metric{display:flex;flex-direction:column;justify-content:center;flex:1}.metric-line{align-items:center;font-size:clamp(15px,3.8vmin,18px)}.metric-line strong{font-size:clamp(20px,5.5vmin,28px)}.meter{height:clamp(10px,2.8vmin,14px);margin-top:clamp(9px,2.5vmin,15px)}}
html:lang(en) .ko{display:none}html:not(:lang(en)) .en{display:none}
@media(max-width:500px){.platform-demo{height:100%;width:100%;border-radius:0;padding:4px;gap:2px;font-size:10px}.platform-grid{grid-template-columns:1fr;grid-template-rows:minmax(0,1.12fr) minmax(0,1fr);gap:3px}.platform-panel{padding:5px 7px;border-radius:5px}.platform-panel h2{font-size:11px;gap:4px}.free{display:none}.flow-chip{padding:2px 3px;font-size:9px}.flow{margin:1px 0}.result{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.price-core{display:grid;grid-template-columns:1fr auto;gap:0 5px;align-items:center}.price-usage{grid-column:1/3;font-size:9px}.price input{margin:1px 0;grid-column:1}.monthly{grid-column:2;grid-row:2;white-space:nowrap}.monthly strong{font-size:17px}.monthly small{font-size:8px}.price-note{grid-column:1/3;font-size:8px;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.platform-source{font-size:8px}}
js
const points=[{"usage":0,"cost":0},{"usage":10,"cost":0.17},{"usage":20,"cost":0.34},{"usage":30,"cost":0.51},{"usage":40,"cost":0.68},{"usage":50,"cost":0.8500000000000001},{"usage":60,"cost":1.02},{"usage":70,"cost":1.1900000000000002},{"usage":80,"cost":1.36},{"usage":90,"cost":1.53},{"usage":100,"cost":1.7000000000000002},{"usage":110,"cost":1.87},{"usage":120,"cost":2.04},{"usage":130,"cost":2.21},{"usage":140,"cost":2.3800000000000003},{"usage":150,"cost":2.5500000000000003},{"usage":160,"cost":2.72},{"usage":170,"cost":2.89},{"usage":180,"cost":3.06},{"usage":190,"cost":3.2300000000000004},{"usage":200,"cost":3.4000000000000004},{"usage":210,"cost":3.5700000000000003},{"usage":220,"cost":3.74},{"usage":230,"cost":3.91},{"usage":240,"cost":4.08},{"usage":250,"cost":4.25},{"usage":260,"cost":4.42},{"usage":270,"cost":4.590000000000001},{"usage":280,"cost":4.760000000000001},{"usage":290,"cost":4.930000000000001},{"usage":300,"cost":5.1000000000000005},{"usage":310,"cost":5.2700000000000005},{"usage":320,"cost":5.44},{"usage":330,"cost":5.61},{"usage":340,"cost":5.78},{"usage":350,"cost":5.95},{"usage":360,"cost":6.12},{"usage":370,"cost":6.29},{"usage":380,"cost":6.460000000000001},{"usage":390,"cost":6.630000000000001},{"usage":400,"cost":6.800000000000001},{"usage":410,"cost":6.970000000000001},{"usage":420,"cost":7.140000000000001},{"usage":430,"cost":7.3100000000000005},{"usage":440,"cost":7.48},{"usage":450,"cost":7.65},{"usage":460,"cost":7.82},{"usage":470,"cost":7.99},{"usage":480,"cost":8.16},{"usage":490,"cost":8.33},{"usage":500,"cost":8.5},{"usage":510,"cost":8.67},{"usage":520,"cost":8.84},{"usage":530,"cost":9.01},{"usage":540,"cost":9.180000000000001},{"usage":550,"cost":9.350000000000001},{"usage":560,"cost":9.520000000000001},{"usage":570,"cost":9.690000000000001},{"usage":580,"cost":9.860000000000001},{"usage":590,"cost":10.030000000000001},{"usage":600,"cost":10.200000000000001},{"usage":610,"cost":10.370000000000001},{"usage":620,"cost":10.540000000000001},{"usage":630,"cost":10.71},{"usage":640,"cost":10.88},{"usage":650,"cost":11.05},{"usage":660,"cost":11.22},{"usage":670,"cost":11.39},{"usage":680,"cost":11.56},{"usage":690,"cost":11.73},{"usage":700,"cost":11.9},{"usage":710,"cost":12.07},{"usage":720,"cost":12.24},{"usage":730,"cost":12.41}];const slider=document.getElementById('platform-slider');const usage=document.getElementById('platform-usage');const cost=document.getElementById('platform-cost');const unit={"ko":"시간","en":"hours"};let manual=false;function paint(){const point=points[Number(slider.value)];usage.textContent=point.usage.toLocaleString()+' '+(document.documentElement.lang==='en'?unit.en:unit.ko);cost.textContent=point.cost===null?'—':'$'+point.cost.toFixed(2)}paint();let direction=1;if(true)setInterval(()=>{if(manual)return;const next=Number(slider.value)+direction;if(next<0||next>=points.length){direction*=-1;return}slider.value=String(next);paint()},950);slider.addEventListener('input',()=>{manual=true;paint()});const chips=[...document.querySelectorAll('[data-flow]')];let frame=0;setInterval(()=>{chips.forEach((chip,index)=>chip.classList.toggle('active',index===frame));frame=(frame+1)%chips.length},950);

1 무엇을 해주나 — App Service는 웹 앱을 Azure의 관리형 런타임에 올리고 HTTP 서비스로 제공한다. VM의 운영체제를 직접 관리할 필요가 줄어든다.

2 무료로 어디까지 — F1 Free 플랜은 상시 무료로 앱 최대 10개, 하루 60 CPU-minutes, 저장 1 GB를 제공한다. 공유 인프라이고 SLA는 없다. B1 인스턴스는 상시 무료가 아니다.

3 넘으면 얼마 — 2026-10 기준 East US Linux B1은 $0.017/시간, 730시간 $12.41이다. Korea Central은 $0.018/시간, 730시간 $13.14다. 데모는 F1에서 B1로 옮긴 뒤의 East US 인스턴스 시간만 계산하고 네트워크 비용은 제외한다.

언제 쓰나

웹 앱을 빠르게 배포하고 서버 관리를 줄일 때 쓴다. F1의 CPU·공유 인프라 한도가 맞지 않으면 B1 비용과 VM 운영 비용을 비교한다.

페이지로 열기 ↗