๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋ก๐—ฃ๐—ฟ๐—ผ๐—ด๐—ฟ๐—ฎ๐—บ๐—บ๐—ถ๐—ป๐—ด๐Ÿ’ป/๐ƒ๐จ๐œ๐ค๐ž๐ซ (6)

๐‘†๐‘ข๐‘›๐‘ โ„Ž๐‘–๐‘›๐‘’ ๐‘Ž๐‘“๐‘ก๐‘’๐‘Ÿ ๐‘Ÿ๐‘Ž๐‘–๐‘›โœง

[Docker] EC2์— Docker Compose ์„ค์น˜ํ›„ ๋ฐฐํฌํ•˜๊ธฐ(feat. ์˜ค๋ฅ˜ ์ง€์˜ฅ & ํšŒ๊ณ )

์ด์ œ๊นŒ์ง€ ์„ค์ •ํ•œ Docker Compose ํŒŒ์ผ์„ EC2์— ๋ฐฐํฌ๋ฅผ ํ•ด๋ณด์ž.  Docker Compose๋ฅผ ๋ฐฐํฌํ•  EC2 ๋ฅผ ์ƒ์„ฑํ•œํ›„ ์ธ์Šคํ„ด์Šค์— ์—ฐ๊ฒฐํ•œ๋‹ค. ssh ํด๋ผ์ด์–ธํŠธ ์—ฐ๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋‹ค์šด๋ฐ›์€ pem ๊ฒฝ๋กœ์—์„œ ํ„ฐ๋ฏธ๋„ ์‹คํ–‰ํ›„ ssh -i "ํ‚ค.pem" ~ ์ด ๋ช…๋ น์–ด๋ฅผ ๋ณต๋ถ™ํ•˜๋ฉด ๋œ๋‹ค.ํ™”๋ฉด์— ๋ณด์ด๋Š” EC2 ์ธ์Šคํ„ด์Šค ์—ฐ๊ฒฐ๋กœ ํ•ด๋„ ์ ‘์†์ด ๊ฐ€๋Šฅํ•˜๋‹ค. ํ„ฐ๋ฏธ๋„์—์„œ ๋‹ค์šด๋ฐ›์€ pemํ‚ค ๊ฒฝ๋กœ๋กœ ๊ฐ€์„œ ssh๋กœ ์ ‘์†ํ• ์ˆ˜ ์žˆ๋Š” ๋ช…๋ น์–ด๋ฅผ ๋ถ™์—ฌ๋„ฃ์ž.ํ•„์ž๋Š” ๋ช…๋ น์–ด๋ฅผ ๋„ฃ์—ˆ๋Š”๋ฐ Permissions 0644 for 'ryusun-creditmarket.pem' are too open. It is required that your private key files are NOT accessible by others. This priva..

[Docker] ์šด์˜ ํ™˜๊ฒฝ Docker Compose ์ž‘์„ฑ & ์Šคํ”„๋ง๋ถ€ํŠธ ์ปจํ…Œ์ด๋„ˆ ์‹คํ–‰ํ•˜๊ธฐ

ํ•„์ž๋Š” ๋กœ์ปฌํ™˜๊ฒฝ์—์„œ ์ธํ…”๋ฆฌ์ œ์ด ๋””๋ฒ„๊น…์„ ์‰ฝ๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•ด ๋กœ์ปฌํ™˜๊ฒฝ์—์„œ๋Š” Redis์™€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ปจํ…Œ์ด๋„ˆ๋งŒ ๋„์› ๋‹ค. ํ•˜์ง€๋งŒ ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค์˜ ๋ฐฐํฌ๋ฅผ ์œ„ํ•ด์„œ๋Š” ์Šคํ”„๋ง๋ถ€ํŠธ ์ปจํ…Œ์ด๋„ˆ๋„ ๋„์›Œ์ค˜์•ผ ํ•œ๋‹ค. ์šด์˜ํ™˜๊ฒฝ์„ ์œ„ํ•œ Redis + Mysql + Spring Boot ์ปจํ…Œ์ด๋„ˆ๋ฅผ๋„์›Œ๋ณด์ž. ์šฐ์„  ์šด์˜ํ™˜๊ฒฝ์—์„œ ์‚ฌ์šฉํ•  Docker Compose ํŒŒ์ผ์„ ์ž‘์„ฑํ•˜์ž. ์ด์ „์— ๋กœ์ปฌ ํ™˜๊ฒฝ์„ ์œ„ํ•ด ์ƒ์„ฑํ–ˆ๋˜ docker-compose-local.yml๊ณผ Dockerfile๊ณผ ๋™์ผํ•œ ๊ฒฝ๋กœ์— docker-compose.yml ํŒŒ์ผ์„ ์ƒ์„ฑํ•ด ์ค€๋‹ค. docker-compose.yml version: "3.8" services: creditmarket-redis: # ์„œ๋น„์Šค๋ช… container_name: creditmarket-redis #..

[Docker] Docker Compose ํŒŒ์ผ๋กœ ๋‹ค์ค‘ ์ปจํ…Œ์ด๋„ˆ ํ™˜๊ฒฝ ๊ตฌ์„ฑํ•˜๊ณ  ์‹คํ–‰ํ•˜๊ธฐ(feat. ์˜ค๋ฅ˜๋“ค)

ํ•„์ž๋Š” ํ”„๋กœ์ ํŠธ์—์„œ redis ๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด docker-compose ํŒŒ์ผ์„ ์‚ฌ์šฉํ•˜์—ฌ redis ์ปจํ…Œ์ด๋„ˆ๋ž‘ mysql ์ปจํ…Œ์ด๋„ˆ 2๊ฐœ๋ฅผ ๋„์šธ๋ ค๊ณ  ํ•œ๋‹ค. ์šฐ์„  ๋„์ปค์™€ ๋„์ปค ์ปดํฌ์ฆˆ์˜ ์ฐจ์ด๋ฅผ ์•Œ์•„๋ณด์ž. Docker Docker๋Š” ๋‹จ์ผ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ๋นŒ๋“œ, ์‹คํ–‰ ๋ฐ ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ๋„๊ตฌ Docker ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ด๋ฏธ์ง€ ๋นŒ๋“œ, ์ปจํ…Œ์ด๋„ˆ ์‹คํ–‰, ๋กœ๊ทธ ํ™•์ธ, ์ปจํ…Œ์ด๋„ˆ ์ค‘์ง€ ๋“ฑ์˜ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๋‹จ์ผ ์›น ์„œ๋ฒ„ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์‹คํ–‰ํ•˜๊ฑฐ๋‚˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ปจํ…Œ์ด๋„ˆ๋ฅผ ๋„์šธ ๋•Œ Docker๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Docker Compose Docker Compose๋Š” ์—ฌ๋Ÿฌ ์ปจํ…Œ์ด๋„ˆ์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ •์˜ํ•˜๊ณ  ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•œ ๋„๊ตฌ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์„œ๋น„์Šค, ๋„คํŠธ์›Œํฌ, ๋ณผ๋ฅจ ๋“ฑ์„ ํฌํ•จํ•˜๋Š” ๋ณต์žกํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์Šคํƒ์„ ์ •์˜..

[Docker] Dockerfile, ์ปจํ…Œ์ด๋„ˆ ์ƒ์„ฑํ›„ ์‹คํ–‰ํ•˜๊ธฐ

๋„์ปค์˜ ์žฅ์  - ํ•˜์ดํผ ๋ฐ”์ด์ € ๊ตฌ์กฐ๋ฅผ ํ† ๋Œ€๋กœ ๋“ฑ์žฅํ–ˆ์œผ๋ฉฐ, VM๋ณด๋‹ค ํ›จ์”ฌ ๊ฐ€๋ณ๊ฒŒ ๋™์ž‘ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์„ฑ๋Šฅ์— ์œ ๋ฆฌ! ์ด๋ฏธ์ง€ - ์ฝ”๋“œ, ๋Ÿฌํƒ€์ž„, ์‹œ์Šคํ…œ ๋„๊ตฌ, ์‹œ์Šคํ…œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ฐ ์„ค์ •๊ณผ ๊ฐ™์€ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ํ•˜๋Š”๋ฐ ํ•„์š”ํ•œ ๋ชจ๋“ ๊ฒƒ์„ ํ‘œํ•จํ•˜๋Š” ํŒจํ‚ค์ง€ - ์ปจํ…Œ์ด๋„ˆ๋ž€ ๋„์ปค ์ด๋ฏธ์ง€๋ฅผ ๋…๋ฆฝ๋œ ๊ณต๊ฐ„์—์„œ ์‹คํ–‰ ํ• ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ๊ธฐ์ˆ  - ์ฆ‰ ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ํ•˜๋Š”๋ฐ ํ•„์š”ํ•œ ์„ค์ •์ด๋‚˜ ์ข…์†์„ฑ๋“ค์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. - ์ปจํ…Œ์ด๋„ˆ๋Š” ์ด๋ฏธ์ง€ ์ธ์Šคํ„ด์Šค์ด๋ฉฐ, ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ํ•œ๋‹ค. Docker Compose๋ž€ - ๋ฉ€ํ‹ฐ ์ปจํ…Œ์ด๋„ˆ ๋„์ปค ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ •์˜ํ•˜๊ณ  ์‹คํ–‰ํ•˜๋Š” ๋„๊ตฌ - Application, Databse, Redis, Nginx ๋“ฑ ๊ฐ ๋…๋ฆฝ์ ์ธ ์ปจํ…Œ์ด๋„ˆ๋กœ ๊ด€๋ฆฌํ•œ๋‹ค๊ณ  ํ–ˆ์„๋•Œ ๋‹ค์ค‘ ์ปจํ…Œ์ด๋„ˆ ๋ผ์ดํ”„ ์‚ฌ์ดํด์„ ์—ฌ๋Ÿฌ๊ฐœ์˜ ๋„์ปค ์ปจํ…Œ์ด๋„ˆ๋กœ๋ถ€ํ„ฐ ์ด๋ฃจ์–ด์ง„ ..

[Docker] ์„œ๋ฒ„ ํ„ฐ์งˆ๋•Œ ๋„์ปค ์ปจํ…Œ์ด๋„ˆ ์žฌ์‹คํ–‰ํ•˜๊ธฐ

sudo docker start [Container ID] mysqlMySQL๋ฅผ Docker ๋กœ ๋„์šฐ๋Š” ๊ฒฝ์šฐ, ์„œ๋ฒ„๊ฐ€ ํ„ฐ์งˆ ๋•Œ๋งˆ๋‹ค ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์žฌ์‹คํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค. 1. AWS ์„œ๋ฒ„ ์žฌ๋ถ€ํŒ…ํ•˜๊ธฐ์šฐ์„  AWS ์—์„œ ์„œ๋ฒ„๋ฅผ ์žฌ๋ถ€ํŒ…ํ•˜์ž์žฌ๋ถ€ํŒ…์„ ํ•˜๊ฒŒ๋˜๋ฉด ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์žฌ์‹คํ–‰ ํ•ด์ค˜์•ผํ•œ๋‹ค. 2. ์ปจํ…Œ์ด๋„ˆ ์žฌ์‹คํ–‰ํ•˜๊ธฐssh๋กœ ec2์— ์›๊ฒฉ ์ ‘์†ํ•œ๋‹ค.sudo docker ps -aํ˜„์žฌ ๋™์ž‘ํ•˜๊ณ  ์žˆ๋Š” ์ปจํ…Œ์ด๋„ˆ ์ƒํƒœ๋ฅผ ํ™•์ธํ•œ๋‹ค. sudo docker ps -aa์˜ต์…˜ ํ•˜๋ฉด running ์ƒํƒœ์™€ ์ฃฝ์€ ์ƒํƒœ ๋ชจ๋“  ์ƒํƒœ์— ์žˆ๋Š” ์ปจํ…Œ์ด๋„ˆ ๋‹ค ํ™•์ธ ๊ฐ€๋Šฅํ•˜๋‹ค. mysql ์ด exited ์ƒํƒœ ๋œ ๊ฒƒ์„ ํ™•์ธํ•˜๊ณ sudo docker start [Container ID]๋กœ mysql ์žฌ๊ธฐ๋™ํ•œ๋‹ค.sudo docker ps ๋กœ ์‹คํ–‰์‹œํ‚จ ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ์ž˜ ๋™..