์Šค์บ” ์œ ํ˜•

Artifact Analysis๋Š” ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์Šค์บ”ํ•˜๊ธฐ ์œ„ํ•œ ๋‘ ๊ฐ€์ง€ ๊ธฐ๋Šฅ(์ฃผ๋ฌธํ˜• ์Šค์บ” ๋ฐ ์ž๋™ ์Šค์บ”)์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฌธ์„œ์—์„œ๋Š” ๊ฐ ๊ธฐ๋Šฅ์˜ ์ด์ ์„ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค. Artifact Analysis๋Š” ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ๊ด€๋ฆฌ๋„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์Šค์บ”๊ณผ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ์Šคํ† ๋ฆฌ์ง€๋ฅผ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜์—ฌ CI/CD ํŒŒ์ดํ”„๋ผ์ธ์„ ์—”๋“œ ํˆฌ ์—”๋“œ๋กœ ๋ณดํ˜ธํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ž์„ธํžˆ ์•Œ์•„๋ณด๋ ค๋ฉด Artifact Analysis ๊ฐœ์š”๋ฅผ ์ฐธ๊ณ ํ•˜์„ธ์š”.

์ฃผ๋ฌธํ˜• ์Šค์บ”๊ณผ ์ž๋™ ์Šค์บ”์„ ์‚ฌ์šฉํ•˜๋ฉด ์šด์˜์ฒด์ œ ๋ฐ ์–ธ์–ด ํŒจํ‚ค์ง€ (Java, Go)์˜ ์ทจ์•ฝ์ ์„ ์‹๋ณ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ž๋™ ์–ธ์–ด ํŒจํ‚ค์ง€ ์Šค์บ”์€ Artifact Registry์—๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฐ ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ ์ œํ’ˆ์— ์ง€์›๋˜๋Š” ๊ฒ€์‚ฌ ์œ ํ˜• ๋ชฉ๋ก์€ ๋น„๊ต ์ฐจํŠธ๋ฅผ ์ฐธ๊ณ ํ•˜์„ธ์š”.

์ปจํ…Œ์ด๋„ˆ ์ด๋ฏธ์ง€ ์Šค์บ”๊ณผ ๊ด€๋ จ๋œ ๋น„์šฉ์— ๋Œ€ํ•ด ์ž์„ธํžˆ ์•Œ์•„๋ณด๋ ค๋ฉด ๊ฐ€๊ฒฉ ์ฑ…์ •์„ ์ฐธ๊ณ ํ•˜์„ธ์š”.

์ฃผ๋ฌธํ˜• ์Šค์บ”

์˜จ๋””๋งจ๋“œ ์Šค์บ”์„ ์‚ฌ์šฉํ•˜๋ฉด gcloud CLI๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ปดํ“จํ„ฐ ๋˜๋Š” ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ์—์„œ ์ปจํ…Œ์ด๋„ˆ ์ด๋ฏธ์ง€๋ฅผ ๋กœ์ปฌ๋กœ ์Šค์บ”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์ทจ์•ฝ์  ๊ฒฐ๊ณผ์— ์•ก์„ธ์Šคํ•ด์•ผ ํ•˜๋Š” ์‹œ์ ์— ๋”ฐ๋ผ CI/CD ํŒŒ์ดํ”„๋ผ์ธ์„ ์œ ์—ฐํ•˜๊ฒŒ ๋งž์ถค์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ž๋™ ์Šค์บ”

Artifact Analysis๋Š” Artifact Registry์˜ ์•„ํ‹ฐํŒฉํŠธ์— ๋Œ€ํ•œ ์ทจ์•ฝ์  ์Šค์บ”์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. Artifact Analysis๋Š” ์ทจ์•ฝ์  ์ •๋ณด๋ฅผ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜์—ฌ ์ตœ์‹  ์ƒํƒœ๋กœ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค. ์ด ํ”„๋กœ์„ธ์Šค๋Š” ํ‘ธ์‹œ ์‹œ ์Šค์บ”๊ณผ ์ง€์†์  ๋ถ„์„์ด๋ผ๋Š” ๋‘ ๊ฐ€์ง€ ์ฃผ์š” ์ž‘์—…์œผ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.

ํ‘ธ์‹œ ์‹œ ์Šค์บ”

Artifact Analysis๋Š” ์ƒˆ๋กœ์šด ์ด๋ฏธ์ง€๊ฐ€ Artifact Registry์— ์—…๋กœ๋“œ๋  ๋•Œ ์ด๋ฅผ ์Šค์บ”ํ•ฉ๋‹ˆ๋‹ค. ์ด ์Šค์บ”์€ ์ปจํ…Œ์ด๋„ˆ์˜ ์‹œ์Šคํ…œ ํŒจํ‚ค์ง€์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ์ถ”์ถœํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฏธ์ง€๋Š” ์ด๋ฏธ์ง€ ๋‹ค์ด์ œ์ŠคํŠธ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ ๋ฒˆ๋งŒ ์Šค์บ”๋ฉ๋‹ˆ๋‹ค. ์ฆ‰, ํƒœ๊ทธ๋ฅผ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ์ˆ˜์ •ํ•˜๋ฉด ์ƒˆ ์Šค์บ”์ด ํŠธ๋ฆฌ๊ฑฐ๋˜์ง€ ์•Š์œผ๋ฉฐ ์ด๋ฏธ์ง€์˜ ์ฝ˜ํ…์ธ ๋งŒ ๋ณ€๊ฒฝ๋ฉ๋‹ˆ๋‹ค.

Artifact Analysis๋Š” ๋ณด์•ˆ ์ทจ์•ฝ์ ์—์„œ ๊ณต๊ฐœ์ ์œผ๋กœ ๋ชจ๋‹ˆํ„ฐ๋ง๋˜๋Š” ํŒจํ‚ค์ง€๋งŒ ๊ฐ์ง€ํ•ฉ๋‹ˆ๋‹ค.

์ด๋ฏธ์ง€ ์Šค์บ”์ด ์™„๋ฃŒ๋œ ํ›„ ์ƒ์„ฑ๋œ ์ทจ์•ฝ์  ๊ฒฐ๊ณผ๋Š” ํ•ด๋‹น ์ด๋ฏธ์ง€์— ๋Œ€ํ•œ ์ทจ์•ฝ์  ์–ด์ปค๋Ÿฐ์Šค์˜ ๋ชจ์Œ์ž…๋‹ˆ๋‹ค.

์ง€์†์  ๋ถ„์„

Artifact Analysis๋Š” ์ด๋ฏธ์ง€ ์—…๋กœ๋“œ ์‹œ ๋ฐœ๊ฒฌ๋œ ์ทจ์•ฝ์ ์— ๋Œ€ํ•œ ์–ด์ปค๋Ÿฐ์Šค๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ์ดˆ๊ธฐ ์Šค์บ” ํ›„ Artifact Registry์—์„œ ์Šค์บ”ํ•œ ์ด๋ฏธ์ง€์˜ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ์ง€์†์ ์œผ๋กœ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜์—ฌ ์ƒˆ๋กœ์šด ์ทจ์•ฝ์ ์ด ์žˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

Artifact Analysis๋Š” ์ทจ์•ฝ์  ์†Œ์Šค์—์„œ ์ƒˆ๋กœ์šด ์—…๋ฐ์ดํŠธ๋œ ์ทจ์•ฝ์  ์ •๋ณด๋ฅผ ๋งค์ผ ์—ฌ๋Ÿฌ ๋ฒˆ ์ˆ˜์‹ ํ•ฉ๋‹ˆ๋‹ค. ์ƒˆ๋กœ์šด ์ทจ์•ฝ์  ๋ฐ์ดํ„ฐ๊ฐ€ ๋„์ฐฉํ•˜๋ฉด Artifact Analysis๋Š” ์Šค์บ”ํ•œ ์ด๋ฏธ์ง€์˜ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ์—…๋ฐ์ดํŠธํ•˜์—ฌ ์ตœ์‹  ์ƒํƒœ๋กœ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค. Artifact Analysis๋Š” ๊ธฐ์กด ์ทจ์•ฝ์  ์–ด์ปค๋Ÿฐ์Šค๋ฅผ ์—…๋ฐ์ดํŠธํ•˜๊ณ , ์ƒˆ ๋ฉ”๋ชจ์— ๋Œ€ํ•œ ์ƒˆ ์ทจ์•ฝ์  ์–ด์ปค๋Ÿฐ์Šค๋ฅผ ๋งŒ๋“ค๊ณ , ๋” ์ด์ƒ ์œ ํšจํ•˜์ง€ ์•Š์€ ์ทจ์•ฝ์  ์–ด์ปค๋Ÿฐ์Šค๋ฅผ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค.

Artifact Analysis๋Š” ์ง€๋‚œ 30์ผ ๋™์•ˆ ํ‘ธ์‹œ๋˜๊ฑฐ๋‚˜ ๊ฐ€์ ธ์˜จ ์ด๋ฏธ์ง€์˜ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋งŒ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค. 30์ผ์ด ์ง€๋‚˜๋ฉด ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๊ฐ€ ๋” ์ด์ƒ ์—…๋ฐ์ดํŠธ๋˜์ง€ ์•Š์œผ๋ฉฐ ๊ฒฐ๊ณผ๊ฐ€ ์˜ค๋ž˜๋ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ Artifact Analysis๋Š” 90์ผ ๋„˜๊ฒŒ ๋น„ํ™œ์„ฑ ์ƒํƒœ์ธ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๊ด€์ฒ˜๋ฆฌํ•˜๋ฉฐ, ์ด ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋Š” Google Cloud ์ฝ˜์†”, gcloud ๋˜๋Š” API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์˜ค๋ž˜๋˜์—ˆ๊ฑฐ๋‚˜ ๋ณด๊ด€์ฒ˜๋ฆฌ๋œ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ๋Š” ์ด๋ฏธ์ง€๋ฅผ ๋‹ค์‹œ ์Šค์บ”ํ•˜๋ ค๋ฉด ํ•ด๋‹น ์ด๋ฏธ์ง€๋ฅผ ๊ฐ€์ ธ์˜ค์„ธ์š”. ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ์ƒˆ๋กœ๊ณ ์นจํ•˜๋Š” ๋ฐ ์ตœ๋Œ€ 24์‹œ๊ฐ„์ด ๊ฑธ๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋งค๋‹ˆํŽ˜์ŠคํŠธ ๋ชฉ๋ก

๋งค๋‹ˆํŽ˜์ŠคํŠธ ๋ชฉ๋ก์œผ๋กœ ์ทจ์•ฝ์  ๊ฒ€์‚ฌ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ๋งค๋‹ˆํŽ˜์ŠคํŠธ ๋ชฉ๋ก์€ ์—ฌ๋Ÿฌ ํ”Œ๋žซํผ์˜ ๋งค๋‹ˆํŽ˜์ŠคํŠธ์— ๋Œ€ํ•œ ํฌ์ธํ„ฐ ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๋‹จ์ผ ์ด๋ฏธ์ง€๊ฐ€ ์—ฌ๋Ÿฌ ์•„ํ‚คํ…์ฒ˜ ๋˜๋Š” ์šด์˜์ฒด์ œ ๋ณ€ํ˜•๊ณผ ํ•จ๊ป˜ ์ž‘๋™ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Artifact Analysis ์ทจ์•ฝ์  ์Šค์บ”์€ Linux amd64 ์ด๋ฏธ์ง€๋งŒ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ๋งค๋‹ˆํŽ˜์ŠคํŠธ ๋ชฉ๋ก์ด ๋‘ ๊ฐœ ์ด์ƒ์˜ Linux amd64 ์ด๋ฏธ์ง€๋ฅผ ๊ฐ€๋ฆฌํ‚ค๋Š” ๊ฒฝ์šฐ ์ฒซ ๋ฒˆ์งธ ์ด๋ฏธ์ง€๋งŒ ๊ฒ€์‚ฌ๋ฉ๋‹ˆ๋‹ค. Linux amd64 ์ด๋ฏธ์ง€๋ฅผ ๊ฐ€๋ฆฌํ‚ค๋Š” ํฌ์ธํ„ฐ๊ฐ€ ์—†์œผ๋ฉด ๊ฒ€์‚ฌ ๊ฒฐ๊ณผ๊ฐ€ ํ‘œ์‹œ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ ๋‹จ๊ณ„