MongoDB ๋ฃจ๋น„ ๋“œ๋ผ์ด๋ฒ„

๊ณต์‹์ ์œผ๋กœ ์ง€์›๋˜๋Š” MongoDB ์šฉ Ruby ์šด์ „์ž ์ž…๋‹ˆ๋‹ค.

Ruby ์šด์ „์ž Ruby 2.7-3.3 ๋ฐ JRuby 9.3-9.4.

์„ค์น˜

์ž„์‹œ ์‚ฌ์šฉ์˜ ๊ฒฝ์šฐ ๋ช…๋ น์ค„์„ ํ†ตํ•ด ๋˜๋Š” RubyGems๋ฅผ ํ†ตํ•ด ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค.

$ gem install Mongo

๋˜๋Š” ๋ณด๋‹ค ์ผ๋ฐ˜์ ์ธ ์šฉ๋„๋กœ ์‚ฌ์šฉํ•˜๋ ค๋ฉด Gemfile์„ ํ†ตํ•ด ๋‹ค์Œ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

gem โ€˜mongoโ€™

๋ฆด๋ฆฌ์Šค ๋ฌด๊ฒฐ์„ฑ

๋ฒ„์ „ 2.20.0 ์ดํ›„์˜ ๊ฐ MongoDB Ruby ์šด์ „์ž ์ถœ์‹œํ•˜๋‹ค ๋Š” ํŒ€์˜ GPG ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ž๋™์œผ๋กœ ๋นŒ๋“œ๋˜๊ณ  ์„œ๋ช…๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๋“œ๋ผ์ด๋ฒ„์˜ gem ํŒŒ์ผ ํ™•์ธํ•˜๋ ค๋ฉด ๋‹ค์Œ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

  1. GPG ํ‚ค๋ฅผ ๋‹ค์šด๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค.

  2. gpg --import ruby-driver.asc์„(๋ฅผ) ์‚ฌ์šฉํ•˜์—ฌ ํ‚ค๋ฅผ GPG ํ‚ค๋ง์œผ๋กœ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค.

  3. gem ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค(์•„์ง ์—†๋Š” ๊ฒฝ์šฐ). ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ RubyGems์—์„œ ๋‹ค์šด๋กœ๋“œ gem fetch mongo ํ•˜๊ฑฐ๋‚˜ Github ์˜ ๋ฆด๋ฆฌ์Šค ํŽ˜์ด์ง€์—์„œ ๋‹ค์šด๋กœ๋“œ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  4. ๋™์ผํ•œ ์ถœ์‹œํ•˜๋‹ค ์—์„œ ํ•ด๋‹นํ•˜๋Š” ๋ถ„๋ฆฌ๋œ ์„œ๋ช… ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค. gem ํŒŒ์ผ ์— ํ•ด๋‹นํ•˜๋Š” ์ถœ์‹œํ•˜๋‹ค ํ•˜๋‹จ์˜ 'Assets' ๋ชฉ๋ก ์•„๋ž˜์—์„œ ์„ค์น˜ํ•˜๋ ค๋Š” gem๊ณผ ๋™์ผํ•œ ๋ฒ„์ „ ๋ฒˆํ˜ธ๋ฅผ ๊ฐ€์ง„ .sig ํŒŒ์ผ ์ด ์žˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

  5. gpg --verify mongo-X.Y.Z.gem.sig mongo-X.Y.Z.gem (X.Y.Z ์„ ์‹ค์ œ ๋ฒ„์ „ ๋ฒˆํ˜ธ๋กœ ๋Œ€์ฒด)์œผ๋กœ gem์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

์ถœ๋ ฅ์—์„œ " ์ข‹์€ ์„œ๋ช… from "MongoDB Ruby ๋“œ๋ผ์ด๋ฒ„ ๋ฆด๋ฆฌ์Šค ์„œ๋ช… ํ‚ค ํŒจํ‚ค์ง•@mongodb.com " ๊ณผ ๊ฐ™์€ ํ…์ŠคํŠธ๋ฅผ ์ฐพ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ๋ณด๋ฉด ์„œ๋ช…์ด ์ง€์ •๋œ gem ํŒŒ์ผ ์— ํ•ด๋‹นํ•˜๋Š” ๊ฒƒ์œผ๋กœ ๋‚˜ํƒ€๋‚ฌ์Šต๋‹ˆ๋‹ค.

("์ด ํ‚ค๋Š” ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ์„œ๋ช…์œผ๋กœ ์ธ์ฆ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค!"์™€ ๊ฐ™์€ ๊ธฐํƒ€ ์ถœ๋ ฅ์€ ์›น ์˜ค๋ธŒ ํŠธ๋Ÿฌ์ŠคํŠธ์™€ ๊ด€๋ จ์ด ์žˆ์œผ๋ฉฐ, ๋‹น์‚ฌ์—์„œ ๋‹ค์šด๋กœ๋“œํ•œ ruby-driver.asc ํ‚ค๋ฅผ ๊ฐœ์ธ์ ์œผ๋กœ ์–ผ๋งˆ๋‚˜ ์‹ ๋ขฐํ•˜๋Š”์ง€์— ๋”ฐ๋ผ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค. ์ž์„ธํ•œ ํ•™์Šต www.gnupg.org/gph/en/manual/x.html ์„334 ์ฐธ์กฐํ•˜์„ธ์š”.

RubyGems์˜ gem ์„œ๋ช… ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

RubyGems์˜ ์ž์ฒด gem ์„œ๋ช…์€ ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š”๋ฐ, ๊ฐ€์žฅ ํฐ ์ด์œ ๋Š” gem์„ ์„œ๋ช…ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ํ‚ค์™€ ๊ด€๋ จํ•˜์—ฌ ์„ค์ •๋œ ์‹ ๋ขฐ ์ฒด์ธ์ด ์—†๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. RubyGems์˜ ์ž์ฒด ๋ฌธ์„œ์—์„œ๋Š” "์ด gems ์„œ๋ช… ๋ฐฉ๋ฒ•์€ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Œ" ์„ ์ธ์ •ํ•ฉ๋‹ˆ๋‹ค(์ฐธ์กฐ:guides.rubygems.org/security/). ์ด์— ๋Œ€ํ•œ RubyGems ์ปค๋ฎค๋‹ˆํ‹ฐ์˜ ๋…ผ์˜๋Š” 10๋…„ ์ด์ƒ ๊ณ„์†ํ•ด์„œ ์ด๋ฃจ์–ด์ง€๊ณ  ์žˆ์œผ๋ฉฐ, ๊ฒฐ๊ตญ ์†”๋ฃจ์…˜์ด ๋„์ฐฉํ•˜์ง€๋งŒ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ด์œ ๋กœ GPG๋ฅผ ๋Œ€์‹  ์‚ฌ์šฉํ•˜๊ธฐ๋กœ ๊ฒฐ์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.

  1. MongoDB ์˜ ๋‹ค๋ฅธ ๋งŽ์€ ์šด์ „์ž ํŒ€์€ GPG๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ œํ’ˆ ๋ฆด๋ฆฌ์Šค์— ์„œ๋ช…ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ํŒ€๊ณผ์˜ ์ผ๊ด€์„ฑ์€ ๊ธฐ์กด ๋„๊ตฌ๋ฅผ ์ž์ฒด ์ œํ’ˆ ๋ฆด๋ฆฌ์Šค์— ์žฌ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

  2. GPG๋Š” ๋„๋ฆฌ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์‹ ๋ขฐ์˜ ์›น์„ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ๊ธฐ์กด ๋„๊ตฌ์™€ ์ ˆ์ฐจ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค(์œ ๊ฐ์Šค๋Ÿฝ๊ฒŒ๋„ ์ด๋Ÿฌํ•œ ๋ฐฉ์‹์ด ์ดˆ์‹ฌ์ž์—๊ฒŒ๋Š” ์ƒ๋‹นํžˆ ๋น„๋ฐ€์Šค๋Ÿฝ๊ณ  ๊ฒ์ด ๋‚˜๋Š” ๊ฒƒ์ด ์‚ฌ์‹ค์ž…๋‹ˆ๋‹ค).

๊ถ๊ทน์ ์œผ๋กœ ๋Œ€๋ถ€๋ถ„์˜ ์‚ฌ์šฉ์ž๋Š” gem์„ ํ™•์ธํ•˜๋Š” ๋ฐ ๋ฒˆ๊ฑฐ๋กญ์ง€ ์•Š์œผ๋ฉฐ, RubyGems์˜ ๋„ค์ดํ‹ฐ๋ธŒ ๋ฐฉ๋ฒ• ๋Œ€์‹  GPG๋ฅผ ์„ ํƒํ•ด๋„ ์˜ํ–ฅ์„ ๋ฐ›์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋ฌธ์„œ

๋†’์€ ์ˆ˜์ค€์˜ ๋ฌธ์„œ์™€ ์‚ฌ์šฉ ์˜ˆ์ œ๋Š” ์—ฌ๊ธฐ ์— ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฐ€์žฅ ์ตœ๊ทผ ์ถœ์‹œํ•˜๋‹ค ์— ๋Œ€ํ•œ API ์„ค๋ช…์„œ๋Š” ์—ฌ๊ธฐ ์—์„œ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋งˆ์Šคํ„ฐ ๋ธŒ๋žœ์น˜์— ๋Œ€ํ•œ API ๋ฌธ์„œ๋ฅผ ๋นŒ๋“œ ํ•˜๋ ค๋ฉด ๋กœ์ปฌ์—์„œ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ๋ฅผ ์ฒดํฌ์•„์›ƒํ•˜๊ณ  rake docs ๋ฅผ ์‹คํ–‰ ํ•ฉ๋‹ˆ๋‹ค.

Docs ํด๋”์— ์žˆ๋˜ ํŠœํ† ๋ฆฌ์–ผ ๋ฐ ์ฐธ๊ณ  ์ž๋ฃŒ๋ฅผ ํฌํ•จํ•œ ์ƒ์œ„ ์ˆ˜์ค€ ์šด์ „์ž ๋ฌธ์„œ๋ฅผ ์ด์ œ ์—ฌ๊ธฐ์—์„œ ๋ฌธ์„œ-๋ฃจ๋น„ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์—์„œ ์ฐพ์„ ์ˆ˜์žˆ์Šต๋‹ˆ๋‹ค.

Support

์šด์ „์ž ์— ๋Œ€ํ•œ ์ƒ์—…์  ์ง€์› ์€ MongoDB ์ง€์› ํฌํ„ธ ์„ ํ†ตํ•ด ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.

์งˆ๋ฌธ, ํ† ๋ก  ๋˜๋Š” ์ผ๋ฐ˜์ ์ธ ๊ธฐ์ˆ  ์ง€์› ์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ MongoDB Community ํฌ๋Ÿผ ์„ ๋ฐฉ๋ฌธํ•˜์„ธ์š”.

๊ธฐํƒ€ ์ง€์› ๋ฆฌ์†Œ์Šค๋Š” ๋ฌธ์„œ์˜ ๊ธฐ์ˆ  ์ง€์› ํŽ˜์ด์ง€๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

๋ฒ„๊ทธ ๋ฐ ๊ธฐ๋Šฅ ์š”์ฒญ

๋“œ๋ผ์ด๋ฒ„์˜ ๋ฒ„๊ทธ๋ฅผ ์‹ ๊ณ ํ•˜๊ฑฐ๋‚˜ Ruby ๋“œ๋ผ์ด๋ฒ„ ์ „์šฉ ๊ธฐ๋Šฅ์„ ์š”์ฒญํ•˜๋ ค๋ฉด ๋‹ค์Œ์„ ์ˆ˜ํ–‰ํ•˜์„ธ์š”.

  1. ์ด์Šˆ ํŠธ๋ž˜์ปค ๋ฅผ ๋ฐฉ๋ฌธํ•˜์—ฌ ๋กœ๊ทธ์ธํ•˜์„ธ์š”(๋˜๋Š” ์•„์ง ๊ณ„์ •์ด ์—†๋Š” ๊ฒฝ์šฐ ๊ณ„์ •์„ ์ƒ์„ฑํ•˜์„ธ์š”).

  2. Ruby ํ”„๋กœ์ ํŠธ ๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

  3. 'Create Issue'๋ฅผ ํด๋ฆญํ•˜๊ณ  ํ•ด๋‹น ์–‘์‹ ํ•„๋“œ๋ฅผ ๋ชจ๋‘ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.

์ด์Šˆ๋ฅผ ์ƒ์„ฑํ•  ๋•Œ RUBY ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ JIRA์˜ ๋ชจ๋“  ์ •๋ณด์™€ ์ฝ”์–ด ์„œ๋ฒ„ (SERVER ํ”„๋กœ์ ํŠธ)๊ฐ€ ๊ณต๊ฐœ์ ์œผ๋กœ ํ‘œ์‹œ๋œ๋‹ค๋Š” ์ ์„ ๋ช…์‹ฌํ•˜์‹ญ์‹œ์˜ค.

๋‹ค์Œ์„ ์ˆ˜ํ–‰ํ•˜์„ธ์š”.

  • ํ•ด๋‹น ๋ฌธ์ œ์— ๋Œ€ํ•ด ๊ฐ€๋Šฅํ•œ ํ•œ ๋งŽ์€ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

  • ๋ฌธ์ œ๋ฅผ ์žฌํ˜„ํ•˜๊ธฐ ์œ„ํ•œ ์ž์„ธํ•œ ๋‹จ๊ณ„๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

  • ํ•ด๋‹นํ•˜๋Š” ์ฝ”๋“œ ์Šค๋‹ˆํŽซ, ์Šคํƒ ์ถ”์  ๋ฐ ๋กœ๊ทธ ๋ฐ์ดํ„ฐ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋ฏผ๊ฐํ•œ ๋ฐ์ดํ„ฐ๋‚˜ ์„œ๋ฒ„ ๋กœ๊ทธ๋ฅผ ํฌํ•จํ•˜์ง€ ๋งˆ์„ธ์š”.

  • ๋“œ๋ผ์ด๋ฒ„ ๋ฐ MongoDB Server์˜ ๋ฒ„์ „ ๋ฒˆํ˜ธ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.

๋‹ค์Œ๊ณผ ๊ฐ™์€ ํ–‰๋™์„ ํ•˜์ง€ ๋งˆ์„ธ์š”.

  • ๋ฏผ๊ฐํ•œ ๋ฐ์ดํ„ฐ ๋˜๋Š” ์„œ๋ฒ„ ๋กœ๊ทธ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

  • ์ž ์žฌ์ ์ธ ๋ณด์•ˆ ๋ฌธ์ œ๋ฅผ ๊ณต๊ฐœ์ ์œผ๋กœ ๋ณด๊ณ ํ•ฉ๋‹ˆ๋‹ค(์•„๋ž˜ '๋ณด์•ˆ ๋ฌธ์ œ' ์ฐธ์กฐ).

๋ณด์•ˆ ๋ฌธ์ œ

Ruby ์šด์ „์ž (๋˜๋Š” ๊ธฐํƒ€ MongoDB ์ œํ’ˆ)์—์„œ ์ž ์žฌ์ ์ธ ๋ณด์•ˆ ๊ด€๋ จ ๋ฌธ์ œ๋ฅผ ๋ฐœ๊ฒฌํ•œ ๊ฒฝ์šฐ ์—ฌ๊ธฐ์˜ ์ง€์นจ์— ๋”ฐ๋ผ ์‹ ๊ณ ํ•ด ์ฃผ์„ธ์š”.

์ œํ’ˆ ๊ธฐ๋Šฅ ์š”์ฒญ

Ruby ์šด์ „์ž ์—๋งŒ ๊ตญํ•œ๋˜์ง€ ์•Š๋Š” ๊ธฐ๋Šฅ ์ด๋‚˜ ์šด์ „์ž ์—๋งŒ ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š” ๊ฒƒ๋ณด๋‹ค ๋” ๋งŽ์€ ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š” ๊ธฐ๋Šฅ ( ์˜ˆ์‹œ : MongoDB ์„œ๋ฒ„ ์ง€์› ์ด ํ•„์š”ํ•œ ๊ธฐ๋Šฅ)์„ ์š”์ฒญ ํ•˜๋ ค๋ฉด MongoDB ํ”ผ๋“œ๋ฐฑ ํฌ๋Ÿผ ์„ ํ†ตํ•ด ์•„์ด๋””์–ด๋ฅผ ์ œ์ถœ ์ฃผ์„ธ์š”.

์œ ์ง€ ๊ด€๋ฆฌ ๋ฐ ๋ฒ„๊ทธ ์ˆ˜์ • ์ •์ฑ…

์ƒˆ๋กœ์šด ์šด์ „์ž ๊ธฐ๋Šฅ์€ ์ผ๋ฐ˜์ ์œผ๋กœ ์ด์ „ ๋ฒ„์ „๊ณผ ํ˜ธํ™˜๋˜๋Š” ๋ฐฉ์‹์œผ๋กœ ์ถ”๊ฐ€๋˜๋ฉฐ ์ƒˆ๋กœ์šด ๋งˆ์ด๋„ˆ ๋“œ๋ผ์ด๋ฒ„ ๋ฆด๋ฆฌ์Šค (2.x)๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. ๋ฒ„๊ทธ ์ˆ˜์ •์€ ์ผ๋ฐ˜์ ์œผ๋กœ ๋งˆ์Šคํ„ฐ์—์„œ ๋จผ์ € ์ด๋ฃจ์–ด์ง€๊ณ  ํ˜„์žฌ ๋งˆ์ด๋„ˆ ์šด์ „์ž ์ถœ์‹œํ•˜๋‹ค ๋กœ ๋ฐฑํฌํŠธ๋ฉ๋‹ˆ๋‹ค. ์˜ˆ์™ธ๋Š” ์‚ฌ๋ก€๋ณ„๋กœ ์ ์šฉ๋  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์˜ˆ๋ฅผ ์˜ˆ์‹œ ๋ณด์•ˆ ์ˆ˜์ • ์‚ฌํ•ญ์ด ์ด์ „์˜ ์•ˆ์ •์ ์ธ ๋ธŒ๋žœ์น˜๋กœ ๋ฐฑํฌํŒ…๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ€์žฅ ์ตœ๊ทผ์˜ ๋งˆ์ด๋„ˆ ์šด์ „์ž ์ถœ์‹œํ•˜๋‹ค ๋งŒ ๊ณต์‹์ ์œผ๋กœ ์ง€์›๋ฉ๋‹ˆ๋‹ค. ๊ณ ๊ฐ์€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ตœ์‹  ์šด์ „์ž ์ถœ์‹œํ•˜๋‹ค ๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

ํ…Œ์ŠคํŠธ ์‹คํ–‰

๋“œ๋ผ์ด๋ฒ„์˜ ํ…Œ์ŠคํŠธ ์ œํ’ˆ๊ตฐ์„ ์‹คํ–‰ ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์ง€์นจ์€ spec/README.md ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

๋ฆด๋ฆฌ์Šค ๋‚ด์—ญ

์ „์ฒด ๋ฆด๋ฆฌ์Šค ๋…ธํŠธ์™€ ๋ฆด๋ฆฌ์Šค ๊ธฐ๋ก์€ Github ๋ฆด๋ฆฌ์Šค ํŽ˜์ด์ง€์—์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ผ์ด์„ ์Šค

์ €์ž‘๊ถŒ ยฉ 2009-2020 MongoDB, Inc.

Apache ๋ผ์ด์„ ์Šค, ๋ฒ„์ „ 2.0 ('๋ผ์ด์„ ์Šค')์— ๋”ฐ๋ผ ๋ผ์ด์„ ์Šค๊ฐ€ ๋ถ€์—ฌ๋ฉ๋‹ˆ๋‹ค. ๋ผ์ด์„ ์Šค๋ฅผ ์ค€์ˆ˜ํ•˜์ง€ ์•Š๋Š” ํ•œ ์ด ํŒŒ์ผ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ์—์„œ ๋ผ์ด์„ ์Šค ์‚ฌ๋ณธ์„ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

www.apache.org/licenses/LICENSE-2.0

ํ•ด๋‹น ๋ฒ•๋ฅ ์—์„œ ์š”๊ตฌํ•˜๊ฑฐ๋‚˜ ๋ฌธ์„œ๋กœ ๋™์˜ํ•˜์ง€ ์•Š๋Š” ํ•œ, ๋ผ์ด์„ ์Šค์— ๋”ฐ๋ผ ๋ฐฐํฌ๋˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด๋Š” ๋ช…์‹œ์ ์ด๋“  Express ์ด๋“  ์–ด๋–ค ์ข…๋ฅ˜์˜ ๋ณด์ฆ์ด๋‚˜ ์กฐ๊ฑด ์—†์ด "์žˆ๋Š” ๊ทธ๋Œ€๋กœ" ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค. ๋ผ์ด์„ ์Šค์— ๋”ฐ๋ฅธ ๊ถŒํ•œ ๋ฐ ์ œํ•œ ์‚ฌํ•ญ์„ ์ ์šฉํ•˜๋Š” ํŠน์ • ์–ธ์–ด๋Š” ๋ผ์ด์„ ์Šค๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.