Skip to main content

Github Codespaces์˜ ๊ธฐ๋ณธ ํŽธ์ง‘๊ธฐ ์„ค์ •

๊ฐœ์ธ ์„ค์ • ํŽ˜์ด์ง€์—์„œ Codespaces์— ๋Œ€ํ•œ ๊ธฐ๋ณธ ํŽธ์ง‘๊ธฐ๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์„ค์ • ํŽ˜์ด์ง€์—์„œ ํŽธ์ง‘๊ธฐ ๊ธฐ๋ณธ ์„ค์ •์„ ํ†ตํ•ด codespace๋ฅผ ๋งŒ๋“ค๊ฑฐ๋‚˜ ๊ธฐ์กด codespace๋ฅผ ์—ด ๋•Œ ์›ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ์—ด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • Visual Studio Code (๋ฐ์Šคํฌํ†ฑ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ)
  • Visual Studio Code (์›น ํด๋ผ์ด์–ธํŠธ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ)
  • JupyterLab - Project Jupyter์šฉ ์›น ์ธํ„ฐํŽ˜์ด์Šค

ํ…œํ”Œ๋ฆฟ์—์„œ ์ƒˆ codespace๋ฅผ ๋งŒ๋“ค ๋•Œ ํ•ญ์ƒ Visual Studio Code ์›น ํด๋ผ์ด์–ธํŠธ์—์„œ ์—ด๋ฆฝ๋‹ˆ๋‹ค. ์ง€์›๋˜๋Š” ๋ชจ๋“  ํŽธ์ง‘๊ธฐ์—์„œ ๊ธฐ์กด codespace๋ฅผ ๋‹ค์‹œ ์—ด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๊ธฐ์กด Codespace ์—ด๊ธฐ์„(๋ฅผ) ์ฐธ์กฐํ•˜์„ธ์š”.

Visual Studio Code๋ฅผ GitHub Codespaces์˜ ๊ธฐ๋ณธ ํŽธ์ง‘๊ธฐ๋กœ ์‚ฌ์šฉํ•˜๋ ค๋ฉด Visual Studio Code๋ฅผ ์„ค์น˜ํ•ด์•ผ ํ•˜๋ฉฐ Visual Studio Code์— ๋Œ€ํ•œ GitHub Codespaces ํ™•์žฅ์„ ์„ค์น˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ Visual Studio Code ๋‹ค์šด๋กœ๋“œ ํŽ˜์ด์ง€ ๋ฐ Visual Studio Code ๋งˆ์ผ“ํ”Œ๋ ˆ์ด์Šค์˜ GitHub Codespaces ํ™•์žฅ์„ ์ฐธ์กฐํ•˜์„ธ์š”.

๊ธฐ๋ณธ ํŽธ์ง‘๊ธฐ ์„ค์ •

  1. GitHub์˜ ํŽ˜์ด์ง€ ์˜ค๋ฅธ์ชฝ ์ƒ๋‹จ์—์„œ ํ”„๋กœํ•„ ์‚ฌ์ง„์„ ์„ ํƒํ•œ ๋‹ค์Œ, ์„ค์ •์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

  2. ์‚ฌ์ด๋“œ๋ฐ”์˜ "์ฝ”๋“œ, ๊ณ„ํš, ์ž๋™ํ™”" ์„น์…˜์—์„œ Codespaces๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

  3. โ€œํŽธ์ง‘๊ธฐ ๊ธฐ๋ณธ ์„ค์ •โ€์—์„œ ์›ํ•˜๋Š” ์˜ต์…˜์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    • Visual Studio Code ๋ฅผ ์„ ํƒํ•œ ๊ฒฝ์šฐ, ๋กœ์ปฌ ๋จธ์‹ ์— VS Code๊ฐ€ ์„ค์น˜๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

    • Visual Studio Code ์„(๋ฅผ) ์„ ํƒํ•  ๊ฒฝ์šฐ ๋‹ค์Œ์— codespace๋ฅผ ๋งŒ๋“ค๊ฑฐ๋‚˜ ์—ด ๋•Œ GitHub Codespaces(์ด)๊ฐ€ ๋ฐ์Šคํฌํ†ฑ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์—์„œ ์ž๋™์œผ๋กœ ์—ด๋ฆฝ๋‹ˆ๋‹ค.

      ์„ฑ๊ณต์ ์œผ๋กœ ์—ด๋ ค๋ฉด ๋ธŒ๋ผ์šฐ์ €์™€ Visual Studio Code์— ๋Œ€ํ•œ ์•ก์„ธ์Šค๋ฅผ ๋ชจ๋‘ ํ—ˆ์šฉํ•ด์•ผ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    • JupyterLab์„ ์„ ํƒํ•˜๋Š” ๊ฒฝ์šฐ, ์—ด๋ ค ์žˆ๋Š” codespace์— JupyterLab ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ์„ค์น˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ๊ฐœ๋ฐœ ์ปจํ…Œ์ด๋„ˆ ์ด๋ฏธ์ง€์—๋Š” JupyterLab์ด ํฌํ•จ๋˜๋ฏ€๋กœ ๊ธฐ๋ณธ ์ด๋ฏธ์ง€์—์„œ ๋งŒ๋“  codespace๋Š” ํ•ญ์ƒ JupyterLab์„ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ์ด๋ฏธ์ง€์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๊ฐœ๋ฐœ ์ปจํ…Œ์ด๋„ˆ ์†Œ๊ฐœ ๋ฐ devcontainers/images ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”. ๊ฐœ๋ฐœ ์ปจํ…Œ์ด๋„ˆ ๊ตฌ์„ฑ์—์„œ ๊ธฐ๋ณธ ์ด๋ฏธ์ง€๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ devcontainer.json ํŒŒ์ผ์— ghcr.io/devcontainers/features/python ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•˜์—ฌ JupyterLab์„ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ต์…˜ "installJupyterlab": true๋ฅผ ํฌํ•จํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ devcontainers/features ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์—์„œ python ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ์ถ”๊ฐ€ ์ •๋ณด๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

์ถ”๊ฐ€ ์ฐธ๊ณ  ์ž๋ฃŒ