Devops/Azure

ํŒŒ์ดํ”„๋ผ์ธ์—์„œ ํ™˜๊ฒฝ ๋ณ€์ˆ˜์™€ ์‹œํฌ๋ฆฟ ๊ด€๋ฆฌํ•˜๋Š” ๋ฒ•

develkbh 2025. 4. 8. 14:45


๐ŸŒŸ ์™œ ํ™˜๊ฒฝ ๋ณ€์ˆ˜์™€ ์‹œํฌ๋ฆฟ ๊ด€๋ฆฌ๊ฐ€ ์ค‘์š”ํ• ๊นŒ?

CI/CD ํŒŒ์ดํ”„๋ผ์ธ์—์„œ๋Š” ์ข…์ข… ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ •๋ณด๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค:

  • API ํ‚ค
  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ ‘์† ์ •๋ณด
  • ๋ฐฐํฌ ํ™˜๊ฒฝ์— ๋”ฐ๋ฅธ ์„ค์ • ๊ฐ’

์ด ์ •๋ณด๋ฅผ ์ฝ”๋“œ์— ํ•˜๋“œ์ฝ”๋”ฉํ•˜๋ฉด ๋ณด์•ˆ์ƒ ํฐ ๋ฌธ์ œ๊ฐ€ ๋˜์ฃ .
๊ทธ๋ž˜์„œ Azure DevOps์—์„œ๋Š” ํ™˜๊ฒฝ ๋ณ€์ˆ˜์™€ ์‹œํฌ๋ฆฟ ๊ฐ’์„ ์•ˆ์ „ํ•˜๊ฒŒ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ์ง€์›ํ•ด์š”!


๐Ÿ”ง ํ™˜๊ฒฝ ๋ณ€์ˆ˜ ์„ค์ • ๋ฐฉ๋ฒ•

๋ฐฉ๋ฒ• 1. YAML์—์„œ ์ง์ ‘ ์ •์˜


variables:
  NODE_ENV: 'production'
  API_URL: 'https://api.example.com'


๐Ÿ’ก ๋ชจ๋“  ๋‹จ๊ณ„์—์„œ ํ•ด๋‹น ๋ณ€์ˆ˜๋“ค์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์–ด์š”.

๋ฐฉ๋ฒ• 2. ํŒŒ์ดํ”„๋ผ์ธ UI์—์„œ ๋ณ€์ˆ˜ ์„ค์ •

  1. ํŒŒ์ดํ”„๋ผ์ธ ํŽธ์ง‘ → "Variables" ํƒญ
  2. Add ํด๋ฆญ ํ›„ ํ‚ค/๊ฐ’ ์ž…๋ ฅ
  • Keep this value secret ์ฒดํฌ ์‹œ ์‹œํฌ๋ฆฟ์œผ๋กœ ์„ค์ •
  • UI์—์„œ ์ถ”๊ฐ€ํ•œ ๋ณ€์ˆ˜๋Š” YAML์—์„œ๋„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์–ด์š”: $(API_URL)

๐Ÿ” ์‹œํฌ๋ฆฟ(๋น„๋ฐ€ ๊ฐ’) ์„ค์ • ๋ฐฉ๋ฒ•

  1. ํŒŒ์ดํ”„๋ผ์ธ ๋ณ€์ˆ˜ > “๋น„๋ฐ€ ๊ฐ’์œผ๋กœ ์ €์žฅ” ์ฒดํฌ
  2. YAML์—์„œ๋Š” $(VARIABLE_NAME) ํ˜•์‹์œผ๋กœ ํ˜ธ์ถœ

 

steps:
  - script: echo "Using API key: $(API_KEY)"


echo ์‹œ์—๋Š” ์‹œํฌ๋ฆฟ ๊ฐ’์ด ์ถœ๋ ฅ๋˜์ง€ ์•Š๋„๋ก ์ฃผ์˜! (๋กœ๊ทธ ์ˆจ๊น€ ์ฒ˜๋ฆฌ๋จ)


๐Ÿง  ์‹ค๋ฌด ํŒ

  • Azure Key Vault์™€ ์—ฐ๋™ํ•ด ๋”์šฑ ์•ˆ์ „ํ•œ ์‹œํฌ๋ฆฟ ๊ด€๋ฆฌ ๊ฐ€๋Šฅ
  • ํ™˜๊ฒฝ์— ๋”ฐ๋ผ ๋‹ค๋ฅธ ๊ฐ’ ์ง€์ • ๊ฐ€๋Šฅ (Dev/Prod)
  • ๋ณ€์ˆ˜ ๊ทธ๋ฃน ๊ธฐ๋Šฅ์œผ๋กœ ์—ฌ๋Ÿฌ ํŒŒ์ดํ”„๋ผ์ธ์—์„œ ๊ณตํ†ต ๋ณ€์ˆ˜ ์‚ฌ์šฉ ๊ฐ€๋Šฅ

๐Ÿ“Œ ๋งˆ๋ฌด๋ฆฌ

ํ™˜๊ฒฝ ๋ณ€์ˆ˜์™€ ์‹œํฌ๋ฆฟ ๊ด€๋ฆฌ๋Š”
๋ณด์•ˆ์„ฑ๊ณผ ํ™•์žฅ์„ฑ์„ ๋™์‹œ์— ์žก์„ ์ˆ˜ ์žˆ๋Š” ํ•ต์‹ฌ ์š”์†Œ์ž…๋‹ˆ๋‹ค.

ํด๋ฆฐํ•˜๊ณ  ์•ˆ์ „ํ•œ DevOps๋ฅผ ์œ„ํ•ด,
ํ•ญ์ƒ ํ•˜๋“œ์ฝ”๋”ฉ ๋Œ€์‹  ๋ณ€์ˆ˜ํ™”ํ•˜์„ธ์š”!