๋กœ์ผ“๐Ÿพ
article thumbnail
[AWS] IAM ์œ ์ € ๋ฐ MFA ์ƒ์„ฑํ•˜๊ธฐ
... 2021. 8. 26. 22:15

IAM ์ด๋ž€? IAM(AWS Identity and Access Management)์€ AWS ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•œ ์•ก์„ธ์Šค๋ฅผ ์•ˆ์ „ํ•˜๊ฒŒ ์ œ์–ดํ•  ์ˆ˜ ์žˆ๋Š” ์›น ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค. IAM์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฆฌ์†Œ์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก ์ธ์ฆ ๋ฐ ๊ถŒํ•œ ๋ถ€์—ฌ๋œ ๋Œ€์ƒ์„ ์ œ์–ดํ•ฉ๋‹ˆ๋‹ค. ๋ฌผ๋ฆฌ ๋ฐ์ดํ„ฐ ์„ผํ„ฐ๋ฅผ ์ƒ๊ฐํ•ด๋ด…์‹œ๋‹ค. ์ถœ์ž…์ด ํ—ˆ๊ฐ€๋œ ์ธ์›๋“ค์€ ์ถœ์ž… ์นด๋“œ๋ฅผ ํ†ตํ•ด ์ถœ์ž…ํ•˜๊ฑฐ๋‚˜, ๋ฆฌ์ŠคํŠธ์— ๋ฐฉ๋ฌธ ๊ธฐ๋ก์„ ํ•˜๊ณ  ํ—ˆ๊ฐ€๋ฅผ ๋ฐ›์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค. IAM์€ ์ด๋Ÿฌํ•œ ๋ฐ์ดํ„ฐ ์„ผํ„ฐ์˜ ์ถœ์ž… ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•˜๋Š” ์ถœ์ž…์นด๋“œ๋‚˜, ๋ฐฉ๋ฌธ ํ—ˆ๊ฐ€ ๊ฐ™์€ ๊ธฐ๋Šฅ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” AWS ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค. ๋ณด์•ˆ ์ฃผ์ฒด๊ฐ€ ์ธ์ฆ(Authentication)๊ณผ ๊ถŒํ•œ๋ถ€์—ฌ(Authorization)์„ ๋ฐ›์•„ ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•œ ์š”์ฒญ์„ ์Šน์ธํ•˜๋Š” ๊ฒƒ์ด IAM์˜ ์ฃผ์š” ์ž‘๋™ ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. AWS ๊ณ„์ •์„ ์ฒ˜์Œ ์ƒ์„ฑํ•˜๋Š” ๊ฒฝ์šฐ์—๋Š” ์ „์ฒด AWS ์„œ๋น„..

๋ณดํ˜ธ๋˜์–ด ์žˆ๋Š” ๊ธ€์ž…๋‹ˆ๋‹ค. ๋‚ด์šฉ์„ ๋ณด์‹œ๋ ค๋ฉด ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅํ•ด์ฃผ์„ธ์š”.
article thumbnail
[Docker] ์™ธ๋ถ€์—์„œ ์ปจํ…Œ์ด๋„ˆ ๋‚ด๋ถ€์— ์ ‘์†ํ•˜๊ธฐ
... 2021. 8. 25. 13:02

์ด ๊ธ€์€ ๋„์ปค ๊ณต๋ถ€ํ•œ ํ”์ ์„ ๋‚จ๊ธฐ๊ธฐ ์œ„ํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค. $ docker run -d -p 8080:80 --name nginx-exposed --restart always nginx ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ์™ธ๋ถ€์—์„œ ์ปจํ…Œ์ด๋„ˆ ๋‚ด๋ถ€์— ๋„๋‹ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. -d(detach) : ๋ฐฑ๊ทธ๋ผ์šด๋“œ์—์„œ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ์˜ต์…˜ -p(publish) : ์™ธ๋ถ€์—์„œ ํ˜ธ์ŠคํŠธ๋กœ ๋ณด๋‚ธ ์š”์ฒญ์„ ์ปจํ…Œ์ด๋„ˆ ๋‚ด๋ถ€๋กœ ์ „๋‹ฌํ•˜๋Š” ์˜ต์…˜์œผ๋กœ -p : ํ˜•์‹์ž…๋‹ˆ๋‹ค. * ์ฐธ๊ณ  : ์ปจํ…Œ์ด๋„ˆ ๊ด€๋ จ ์„ค์ •์€ ์ถ”ํ›„ ๋ณ€๊ฒฝ์ด ๋ถˆ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ๋งŒ์•ฝ ์„ค์ •์„ ๋ฐ”๊พธ๊ณ  ์‹ถ๋‹ค๋ฉด ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์ƒˆ๋กญ๊ฒŒ ๋‹ค์‹œ ์ƒ์„ฑํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ๋„์ปค์˜ ํŠน์ง•์œผ๋กœ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ๋ฐฐํฌ ์ƒํƒœ๋กœ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ๊ฒŒ๋” ๋„์™€์ค๋‹ˆ๋‹ค.

article thumbnail
UUID๊ฐ€ ๊ฒน์น˜๋ฉด ์–ด์ฉŒ์ง€?
... 2021. 8. 25. 09:15

์ด ๊ธ€์€ koreanhole ๋‹˜์˜ ๊ธ€์ž…๋‹ˆ๋‹ค. Intro ์ตœ๊ทผ UOS๊ณต์ง€์‚ฌํ•ญ ์•ฑ์˜ ๋ฐฑ์—”๋“œ ์‹œ์Šคํ…œ์„ ๊ต์ฒดํ•˜๋Š” ์ž‘์—…์„ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ์กด Firebase์˜ Firestore๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์—ˆ๋Š”๋ฐ ์ด๋ฒˆ์— ์ƒˆ๋กญ๊ฒŒ Nestjs๋กœ ์„œ๋ฒ„๋ฅผ ์ž‘์„ฑํ•˜๋Š” ์ค‘์ž…๋‹ˆ๋‹ค. UOS๊ณต์ง€์‚ฌํ•ญ์˜ ์„œ๋ฒ„์—๋Š” ์ด 3๊ฐœ์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ชจ๋ธ( department, notice, user )์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ ๋ชจ๋ธ์˜ ๋ ˆ์ฝ”๋“œ ๋งˆ๋‹ค ๊ณ ์œ ์˜ id๊ฐ’์„ ๋ฐœ๊ธ‰ํ–ˆ๋Š”๋ฐ ๋ชจ๋‘ uuid(v4)๋กœ ๋ฐœ๊ธ‰ํ–ˆ์Šต๋‹ˆ๋‹ค. uuid๋ฅผ ๋งˆ๊ตฌ์žก์ด๋กœ ๋ฐœ๊ธ‰ํ•˜๊ฒŒ ๋˜๋ฉด ํ˜น์‹œ ๋‚˜์ค‘์— ๊ฒน์น˜๋Š” uuid๊ฐ€ ์žˆ์ง€ ์•Š์„๊นŒ? UUID ์†Œ๊ฐœ uuid๋Š” ๋ฒ”์šฉ๊ณ ์œ ์‹๋ณ„์ž(Universal Unique IDentifier)๋ผ๊ณ  ํ•œ๋‹ค. ๋„คํŠธ์›Œํฌ์ƒ์— ์กด์žฌํ•˜๋Š” ๊ฐœ์ฒด๋“ค์„ ์‹๋ณ„ํ•˜๊ณ  ๊ตฌ๋ณ„ํ•˜๊ธฐ ์œ„ํ•ด ๊ฐœ๋ฐœ ์ฃผ์ฒด๊ฐ€ ์Šค์Šค๋กœ ์ด๋ฆ„์„ ..

article thumbnail
[Node.js] Socket.io Cors(ํฌ๋กœ์Šค ๋„๋ฉ”์ธ) ํ•ด๊ฒฐํ•˜๊ธฐ
... 2021. 8. 24. 21:38

์›น์„ ๊ฐœ๋ฐœํ•˜๋ฉด ํ•œ๋ฒˆ์€ ๊ผญ Cors ๋ฌธ์ œ๋ฅผ ๋งž๋‹ฅ๋œจ๋ฆฝ๋‹ˆ๋‹ค. ์ฑ„ํŒ… ์„œ๋ฒ„๋ฅผ aws๋กœ ๊ตฌ์ถ•ํ•˜๊ณ , ๋กœ์ปฌ์—์„œ ์ฑ„ํŒ… ์„œ๋ฒ„๋ฅผ ์ด์šฉํ•˜์—ฌ ์ฑ„ํŒ…์„ ๊ฐœ๋ฐœํ•˜๊ณ  ์žˆ๋Š”๋ฐ ์—ญ์‹œ๋‚˜ ๋„๋ฉ”์ธ์ด ๋‹ฌ๋ผ Cors ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜์˜€์Šต๋‹ˆ๋‹ค. Node.js ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ค‘ 'Cors'๋ผ๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์žˆ์ง€๋งŒ Socket.io์—์„œ ๋ฐœ์ƒํ•œ ๋ฌธ์ œ๋ผ์„œ ์ด๊ฑธ๋กœ๋Š” ํ•ด๊ฒฐํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๊ตฌ๊ธ€๋ง์„ ํ•ด๋ณธ ๊ฒฐ๊ณผ Socker.io ๊ณต์‹๋ฌธ์„œ์— ๋‹คํ–‰ํžˆ ์ž˜ ์„ค๋ช…๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. "socket.io": "^4.1.3" ๋ฒ„์ „ ๊ธฐ์ค€์ž…๋‹ˆ๋‹ค. const io = require("socket.io")(server, { cors: { origin: "*", methods: ["GET", "POST"] } }); ์œ„ ์ฝ”๋“œ๋ฅผ server-side์— ์ž‘์„ฑํ•ด์ฃผ์‹œ๊ณ , client-side์—๋Š” ์•„..

article thumbnail
[Docker] ์ปจํ…Œ์ด๋„ˆ ์ด๋ฏธ์ง€ ์•Œ์•„๋ณด๊ธฐ
... 2021. 8. 24. 20:55

์ด ๊ธ€์€ ๋„์ปค ๊ณต๋ถ€ํ•œ ํ”์ ์„ ๋‚จ๊ธฐ๊ธฐ ์œ„ํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค. ์ด๋ฏธ์ง€๋Š” ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ๋ผ๊ณ  ํ•˜๋Š” ์ €์žฅ์†Œ์— ๋ชจ์—ฌ์žˆ์Šต๋‹ˆ๋‹ค. ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ๋Š” ๋„์ปค ํ—ˆ๋ธŒ์ผ์ˆ˜๋„ ์žˆ๊ณ , ๋‚ด๋ถ€์— ๊ตฌ์ถ•ํ•œ ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ์ผ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ๋งŒ์•ฝ ๋ณ„๋„์˜ ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ๋ฅผ ๋ช…์‹œํ•˜์ง€ ์•Š์œผ๋ฉด ๋„์ปค ํ—ˆ๋ธŒ์—์„œ ์ด๋ฏธ์ง€๋ฅผ ์ฐพ์Šต๋‹ˆ๋‹ค. $ docker search nginx ์œ„ ๋ช…๋ น์–ด๋กœ nginx์— ๋Œ€ํ•œ ์ด๋ฏธ์ง€๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. INDEX : ์ด๋ฏธ์ง€๊ฐ€ ์ €์žฅ๋œ ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค. NAME : ๊ฒ€์ƒ‰๋œ ์ด๋ฏธ์ง€ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค. ๊ณต์‹ ์ด๋ฏธ์ง€๊ฐ€ ์•„๋‹ˆ๋ผ๋ฉด '๋ ˆ์ง€์ŠคํŠธ๋ฆฌ ์ฃผ์†Œ/์ €์žฅ์†Œ ์†Œ์œ ์ž/ ์ด๋ฏธ์ง€ ํ˜•ํƒœ' ์ž…๋‹ˆ๋‹ค. DESCRIPTION : ์ด๋ฏธ์ง€์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. STARS : ์ข‹์•„์š” ๊ฐฏ์ˆ˜์ž…๋‹ˆ๋‹ค. OFFICAL : ์ด๋ฏธ์ง€์— ํฌํ•จ๋œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜, ๋ฏธ๋“ค์›จ์–ด ๋“ฑ์„ ๊ฐœ๋ฐœํ•œ ์—…์ฒด์—์„œ ๊ณต์‹์ ์œผ๋กœ ์ œ๊ณตํ•œ..

article thumbnail
[Elastic Search] TokenFilter - NGram
... 2021. 8. 24. 15:09

์ด ๊ธ€์€ ๊น€์ข…๋ฏผ(kimjmin@gmail.com)๋‹˜์˜ ๊ธ€์ž…๋‹ˆ๋‹ค. ๋ฌด๋‹จ ๋ณต์ œ/์ˆ˜์ •์„ ๊ธˆํ•ฉ๋‹ˆ๋‹ค. Elasticsearch๋Š” ๋น ๋ฅธ ๊ฒ€์ƒ‰์„ ์œ„ํ•ด ๊ฒ€์ƒ‰์— ์‚ฌ์šฉ๋  ํ…€ ๋“ค์„ ๋ฏธ๋ฆฌ ๋ถ„๋ฆฌํ•ด์„œ ์—ญ ์ธ๋ฑ์Šค์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๊ณผํ•™ ์šฉ์–ด์ง‘ ๊ฒ€์ƒ‰ ๊ฐ™์€ ํŠน์ •ํ•œ ์‚ฌ์šฉ ์‚ฌ๋ก€์— ๋”ฐ๋ผ ํ…€์ด ์•„๋‹Œ ๋‹จ์–ด์˜ ์ผ๋ถ€๋งŒ ๊ฐ€์ง€๊ณ ๋„ ๊ฒ€์ƒ‰ํ•ด์•ผ ํ•˜๋Š” ๊ธฐ๋Šฅ์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ๋„ ์žˆ์Šต๋‹ˆ๋‹ค. RDBMS์˜ LIKE ๊ฒ€์ƒ‰ ์ฒ˜๋Ÿผ ์‚ฌ์šฉํ•˜๋Š” wildcard ์ฟผ๋ฆฌ๋‚˜ regexp (์ •๊ทœ์‹) ์ฟผ๋ฆฌ๋„ ์ง€์›์„ ํ•˜์ง€๋งŒ, ์ด๋Ÿฐ ์ฟผ๋ฆฌ๋“ค์€ ๋ฉ”๋ชจ๋ฆฌ ์†Œ๋ชจ๊ฐ€ ๋งŽ๊ณ  ๋Š๋ฆฌ๊ธฐ ๋•Œ๋ฌธ์— Elasticsearch์˜ ์žฅ์ ์„ ํ™œ์šฉํ•˜์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฐ ์‚ฌ์šฉ์„ ์œ„ํ•ด ๊ฒ€์ƒ‰ ํ…€์˜ ์ผ๋ถ€๋งŒ ๋ฏธ๋ฆฌ ๋ถ„๋ฆฌํ•ด์„œ ์ €์žฅ์„ ํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ ์ด๋ ‡๊ฒŒ ๋‹จ์–ด์˜ ์ผ๋ถ€๋ฅผ ๋‚˜๋ˆˆ ๋ถ€์œ„๋ฅผ NGram ์ด๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๋ณดํ†ต์€ unigram(์œ ๋‹ˆ๊ทธ๋žจ ..

article thumbnail
[Kubernetes] ๋ฐฐํฌ๋œ ํŒŒ๋“œ์˜ ์„ธ๋ถ€ ๊ฐ’์„ ํ™•์ธํ•˜๋Š” ๋ฐฉ๋ฒ•
... 2021. 8. 24. 12:42

์ด ๊ธ€์€ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ๊ณต๋ถ€ํ•œ ํ”์ ์„ ๋‚จ๊ธฐ๊ธฐ ์œ„ํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค. $ kubectl get pod pod-name -o yaml ์œ„ ๋ช…๋ น์–ด๋Š” ํŒŒ๋“œ์— ๋Œ€ํ•œ yaml ํŒŒ์ผ ๋‚ด์šฉ์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. $ kubectl get pods pod-name -o yaml > pod.yaml ๋”ฐ๋ผ์„œ ์œ„์— ๋ช…๋ น์–ด๋ฅผ ํ•˜๊ฒŒ ๋˜๋ฉด ์ถ”ํ›„ ํ•ด๋‹น ํŒŒ๋“œ๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์šฉ์ดํ•ฉ๋‹ˆ๋‹ค.

article thumbnail
[Kubernetes] ํŒŒ๋“œ(pods)์˜ ๋™์ž‘ ๋ณด์ฆ ๊ธฐ๋Šฅ
... 2021. 8. 24. 12:35

์ด ๊ธ€์€ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ๊ณต๋ถ€ํ•œ ํ”์ ์„ ๋‚จ๊ธฐ๊ธฐ ์œ„ํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค. ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค์—์„œ ํŒŒ๋“œ ์ž์ฒด์— ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด ํŒŒ๋“œ๋ฅผ ์ž๋™ ๋ณต๊ตฌํ•ด์„œ ํŒŒ๋“œ๊ฐ€ ํ•ญ์ƒ ๋™์ž‘ํ•˜๋„๋ก ๋ณด์žฅํ•˜๋Š” ๊ธฐ๋Šฅ์ด ์žˆ์Šต๋‹ˆ๋‹ค. deployment๋กœ ์ƒ์„ฑํ•œ ์˜ค๋ธŒ์ ํŠธ์™€ ๊ทธ๋ƒฅ ํŒŒ๋“œ ์˜ค๋ธŒ์ ํŠธ 2๊ฐœ๊ฐ€ ์žˆ๊ณ , ์ด๋ฅผ ์‚ญ์ œํ–ˆ๋‹ค๊ณ  ํ–ˆ์„ ์‹œ kubectl get pods ๋ช…๋ น์–ด๋กœ์˜ค๋ธŒ์ ํŠธ๋“ค์„ ํ™•์ธํ•ด๋ณด๋ฉด deployment ์˜ค๋ธŒ์ ํŠธ๋งŒ ์‚ด์•„์žˆ์Šต๋‹ˆ๋‹ค. deployment ์•ˆ์— ์žˆ๋Š” replicat์…‹์— ์˜ํ•ด์„œ ํŒŒ๋“œ์˜ ๊ฐฏ์ˆ˜๋ฅผ ์œ ์ง€ํ•˜๋ ค๊ณ  ํ•˜๊ธฐ ๋•Œ๋ฌธ์— deployment๋กœ ์ƒ์„ฑํ•œ ํŒŒ๋“œ๋“ค์€ ์‚ญ์ œ๋˜๋„ ๋‹ค์‹œ ์ƒ์„ฑ์ด ๋ฉ๋‹ˆ๋‹ค. age๋ฅผ ๋ด๋„ ๋‹ค์‹œ ์ƒ์„ฑ๋œ๊ฑธ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๊ทธ๋ƒฅ ํŒŒ๋“œ๋Š” ์ด๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ์ปจํŠธ๋กค๋Ÿฌ๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์ž๋™๋ณต๊ตฌ๊ฐ€ ๋ณด์žฅ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. *์ฐธ๊ณ  : ์ปจํŠธ๋กค๋Ÿฌ๋Š” ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ํด๋Ÿฌ์Šคํ„ฐ..

article thumbnail
[Kubernetes] kubectl exec -it ๋ช…๋ น์–ด์—์„œ -- ์˜๋ฏธ
... 2021. 8. 24. 12:28

์ด ๊ธ€์€ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ๊ณต๋ถ€ํ•œ ํ”์ ์„ ๋‚จ๊ธฐ๊ธฐ ์œ„ํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค. ๋ฐฐํฌํ•œ ํŒŒ๋“œ์— ์ ‘๊ทผ ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” $ kubectl exec -it nginx-pod -- /bin/bash ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•ด์ฃผ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์•„๋ž˜ 2๊ฐœ์˜ ๋ช…๋ น์–ด๋ฅผ ์˜ˆ์ œ๋กœ ๋“ค์–ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. $ kubectl exec -it nginx-pod ls -l /run $ kubectl exec -it nginx-pod -- ls -l /run ์ฒซ๋ฒˆ์งธ ๋ช…๋ น์–ด๋Š” -l ์˜ต์…˜์„ exec์˜ ์˜ต์…˜์œผ๋กœ ์ธ์‹ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋‘๋ฒˆ์งธ ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•˜๊ฒŒ ๋œ๋‹ค๋ฉด ์˜๋„ํ•œ๋Œ€๋กœ /run์˜ ๊ถŒํ•œ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์ฒ˜๋Ÿผ ๊ตณ์ด ํ•„์š”ํ•˜์ง€ ์•Š์•„๋„ exec๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ ๋ช…์‹œ์ ์œผ๋กœ '--'๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์—๋Ÿฌ๋ฅผ ์ค„์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

article thumbnail
[Node.js] Ubuntu์—์„œ Node.js ๋ฒ„์ „์—… ํ•˜๊ธฐ
... 2021. 8. 24. 12:24

distro-stable version ์„ค์น˜ (apt) ๊ฐ„๋‹จํ•˜๊ฒŒ apt๋ฅผ ์ด์šฉํ•ด ์„ค์น˜ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. $ sudo apt update $ sudo apt install nodejs $ sudo apt install npm ๊ทธ๋Ÿฐ๋ฐ ๋ฒ„์ „์ด ๋„ˆ๋ฌด ๋‚ฎ์Šต๋‹ˆ๋‹ค. ์ตœ์‹  ๋ฒ„์ „์„ ๋ฐ›๊ธฐ ์œ„ํ•ด PPA(Personal package archive)๋ฅผ ์‚ฌ์šฉํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. PPA๋กœ ์„ค์น˜ NodeSource์— ์˜ํ•ด ๊ด€๋ฆฌ๋˜๋Š” PPA์—์„œ ์ข€ ๋” ์ตœ์‹  ๋ฒ„์ „์„ ๋ฐ›์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ๊ฒŒ์‹œ๋ฌผ ์ž‘์„ฑ ์ผ์ž ๊ธฐ์ค€ LTS ๋ฒ„์ „์€ 12.18.3, Latest ๋ฒ„์ „์€ 14.7.0์ธ๋ฐ Latest์ธ 14๋ฒ„์ „์œผ๋กœ ์„ค์น˜ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. $ curl -sL https://deb.nodesource.com/setup_14.x -o nodesource_14_setup.sh ์„ค..

article thumbnail
[Kubernetes] ๋””ํ”Œ๋กœ์ด๋จผํŠธ(Deployment)์™€ yaml ์ž‘์„ฑ๋ฒ•
... 2021. 8. 20. 16:51

์ด ๊ธ€์€ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ๊ณต๋ถ€ํ•œ ํ”์ ์„ ๋‚จ๊ธฐ๊ธฐ ์œ„ํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ์˜ค๋ธŒ์ ํŠธ๋กœ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ํ•œ๊ณ„๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํ•œ๊ณ„๋ฅผ ๊ทน๋ณตํ•˜๊ณ ์ž ๊ธฐ๋ณธ ์˜ค๋ธŒ์ ํŠธ ์™ธ ๋‹ค์–‘ํ•œ ์˜ค๋ธŒ์ ํŠธ๋“ค์ด ์กด์žฌํ•˜๋Š”๋ฐ ์ด๋ฒˆ์—” ๋””ํ”Œ๋กœ์ด๋จผํŠธ ์˜ค๋ธŒ์ ํŠธ์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ๋””ํ”Œ๋กœ์ด๋จผํŠธ ๋””ํ”Œ๋กœ์ด๋จผํŠธ๋Š” ํ•œ๋งˆ๋””๋กœ ํŒŒ๋“œ + ๋ ˆํ”Œ๋ฆฌ์นด์…‹์ž…๋‹ˆ๋‹ค. * ์ฐธ๊ณ  : ๋ ˆํ”Œ๋ฆฌ์นด์…‹์€ ํŒŒ๋“œ์˜ ์ˆ˜๋ฅผ ๋ณด์žฅํ•ด์ฃผ๋Š” ์˜ค๋ธŒ์ ํŠธ์ž…๋‹ˆ๋‹ค. ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ํด๋Ÿฌ์Šคํ„ฐ์—์„œ์˜ API ์„œ๋ฒ„์™€ ์ปจํŠธ๋กค๋Ÿฌ ๋งค๋‹ˆ์ €๋Š” ๋‹จ์ˆœํžˆ ํŒŒ๋“œ์˜ ๊ฐ์‹œ๊ฐ€ ์•„๋‹Œ ๋””ํ”Œ๋กœ์ด๋จผํŠธ์ฒ˜๋Ÿผ ๋‹ค์–‘ํ•œ ์˜ค๋ธŒ์ ํŠธ๋ฅผ ๊ฐ์‹œํ•ฉ๋‹ˆ๋‹ค. ๋””ํ”Œ๋กœ์ด๋จผํŠธ๋ฅผ ์ƒ์„ฑํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๋ช…๋ น์–ด๋กœ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ create, apply ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋””ํ”Œ๋กœ์ด๋จผํŠธ๋กœ ์ƒ์„ฑํ•œ ํŒŒ๋“œ๋ฅผ ๋Š˜๋ฆฌ๊ณ  ์‹ถ์œผ๋ฉด scale ๋ช…๋ น์–ด๋ฅผ ๋‹ค์‹œ ์ณ์•ผํ•˜์ง€๋งŒ yaml์„ ์‚ฌ์šฉํ•˜์—ฌ ๋””ํ”Œ..

article thumbnail
[Kubernetes] ์˜ค๋ธŒ์ ํŠธ(Object)๋ž€?
... 2021. 8. 20. 16:25

์ด ๊ธ€์€ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ๊ณต๋ถ€ํ•œ ํ”์ ์„ ๋‚จ๊ธฐ๊ธฐ ์œ„ํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค. ์˜ค๋ธŒ์ ํŠธ๋ž€? ํŒŒ๋“œ์™€ ๋””ํ”Œ๋กœ์ด๋จผํŠธ๋Š” ์ŠคํŽ™๊ณผ ์ƒํƒœ๊ฐ’์„ ๊ฐ€์ง€๋Š” ๋ฐ ์ด๋Ÿฌํ•œ ํŒŒ๋“œ์™€ ๋””ํ”Œ๋กœ์ด๋จผํŠธ๋ฅผ ๊ฐœ๋ณ„ ์†์„ฑ์„ ํฌํ•จํ•ด ๋ถ€๋ฅด๋Š” ๋‹จ์œ„๊ฐ€ ์˜ค๋ธŒ์ ํŠธ์ž…๋‹ˆ๋‹ค. * ์ฐธ๊ณ  : ํŒŒ๋“œ๋„ ์˜ค๋ธŒ์ ํŠธ์ด๋‹ค. ๊ธฐ๋ณธ ์˜ค๋ธŒ์ ํŠธ ๊ธฐ๋ณธ ์˜ค๋ธŒ์ ํŠธ์˜ ์ข…๋ฅ˜๋กœ๋Š” ํŒŒ๋“œ, ๋„ค์ž„์ŠคํŽ˜์ด์Šค, ๋ณผ๋ฅจ, ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค. ํŒŒ๋“œ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค์—์„œ ์‹คํ–‰๋˜๋Š” ์ตœ์†Œ๋‹จ์œ„์ž…๋‹ˆ๋‹ค. ๋…๋ฆฝ์ ์ธ ๊ณต๊ฐ„๊ณผ IP๋ฅผ ๊ฐ€์ง€๋ฉฐ, ํ•˜๋‚˜ ์ด์ƒ์˜ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ๊ฐ€์ง€์ง€๋งŒ ๋ณดํ†ต 1 ํŒŒ๋“œ 1 ์ปจํ…Œ์ด๋„ˆ ๊ตฌ์กฐ์ž…๋‹ˆ๋‹ค. ๋„ค์ž„์ŠคํŽ˜์ด์Šค ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ํด๋Ÿฌ์Šคํ„ฐ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ๋ฆฌ์†Œ์Šค๋“ค์„ ๊ตฌ๋ถ„ํ•ด ๊ด€๋ฆฌํ•˜๋Š” ๊ทธ๋ฃน์ž…๋‹ˆ๋‹ค. ๋ณผ๋ฅจ ๊ธฐ๋ณธ์ ์œผ๋กœ ํŒŒ๋“œ๋Š” ์–ด๋””์— ์˜์†๋˜๋Š” ๊ฐœ๋…์ด ์•„๋‹ˆ์ง€๋งŒ ํŒŒ๋“œ๊ฐ€ ์‚ฌ๋ผ์ง€๋”๋ผ๋„ ๋ณด์กด ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•ด์ฃผ๋Š” ์˜ค๋ธŒ์ ํŠธ์ž…๋‹ˆ๋‹ค. * ์ฐธ๊ณ  : ํŒŒ๋“œ๋Š” ์–ธ์ œ๋‚˜ ์ฃฝ์„์ˆ˜ ์žˆ๋Š” ์˜ค๋ธŒ์ ํŠธ์ž…๋‹ˆ๋‹ค...

article thumbnail
[Kubernetes] ์˜ค๋ธŒ์ ํŠธ ์ƒ์„ฑ์‹œ run, create, apply ์ฐจ์ด
... 2021. 8. 20. 13:06

์ด ๊ธ€์€ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ๊ณต๋ถ€ํ•œ ํ”์ ์„ ๋‚จ๊ธฐ๊ธฐ ์œ„ํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค. ์˜ค๋ธŒ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•  ๋•Œ ๋ช…๋ น์–ด๋งŒ์œผ๋ก  ํ•œ๊ณ„๊ฐ€ ์žˆ์–ด yaml์— ์ŠคํŽ™์„ ์ž‘์„ฑ ํ›„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์ž‘์„ฑํ•œ yaml ํŒŒ์ผ ๊ธฐ์ค€์œผ๋กœ run, create, apply๋กœ ์˜ค๋ธŒ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•˜๋Š”๋ฐ create, apply์„ ์ฃผ๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. run๊ณผ create ๋น„๊ต run์€ ํŒŒ๋“œ 1๊ฐœ๋งŒ ์ƒ์„ฑํ•˜๊ณ  ๊ด€๋ฆฌํ•ด์ค๋‹ˆ๋‹ค. create๋Š” ๊ทธ๋ฃน ๋‚ด ํŒŒ๋“œ 1๊ฐœ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ๊ด€๋ฆฌํ•ด์ค๋‹ˆ๋‹ค. run์œผ๋กœ ์ƒ์„ฑํ•œ ํŒŒ๋“œ๋Š” ์ดˆ์ฝ”ํŒŒ์ด1๊ฐœ์ด๊ณ , create๋กœ ์ƒ์„ฑํ•œ ํŒŒ๋“œ๋Š” ์ดˆ์ฝ”ํŒŒ์ด ๋ฐ•์Šค ์•ˆ์— ์žˆ๋Š” ์ดˆ์ฝ”ํŒŒ์ด1๊ฐœ์ž…๋‹ˆ๋‹ค. create๊ณผ apply ๋น„๊ต ์˜ค๋ธŒ์ ํŠธ๊ฐ€ ๋””ํ”Œ๋กœ์ด๋จผํŠธ ์ผ ๊ฒฝ์šฐ replicas ๋ฅผ ์ง€์ •ํ•ด์ฃผ์–ด์„œ ํŒŒ๋“œ์˜ ๊ฐฏ์ˆ˜๋ฅผ ๋ณด์žฅ๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋งŒ์•ฝ create๋ฅผ ์ด์šฉํ•˜์—ฌ ๋””ํ”Œ๋กœ์ด๋จผํŠธ ์ƒ์„ฑํ–ˆ์„ ๊ฒฝ์šฐ y..

article thumbnail
[JS] ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ฟ ํ‚ค ์ƒ์„ฑ, ์ €์žฅ, ์‚ญ์ œ ๊ตฌํ˜„ํ•˜๊ธฐ
... 2021. 8. 20. 10:32

์ฟ ํ‚ค(Cookie) ์ €์žฅํ•˜๊ธฐ var setCookie = function(name, value, exp) { var date = new Date(); date.setTime(date.getTime() + exp*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + date.toUTCString() + ';path=/'; }; // setCookie(๋ณ€์ˆ˜์ด๋ฆ„, ๋ณ€์ˆ˜๊ฐ’, ๊ธฐ๊ฐ„); setCookie("expend", "true", 1); ์ฟ ํ‚ค(Cookie) ๊ฐ€์ ธ์˜ค๊ธฐ var getCookie = function(name) { var value = document.cookie.match('(^|;) ?' + name + '=([^;]*)(;|$..

profile on loading

Loading...