๋ชฉ๋กBackend๐งฑ (24)
๊ฐ๋ฐ์ผ์ง

์ฐ์ ๋ฉํฐ ์คํ ์ด์ง ๋น๋๋, 1. ๋ฉํฐ์คํ ์ด์ง ๋น๋Docker์์ ์ด๋ฏธ์ง๋ฅผ ์์ฑํ ๋ ์ต์ข ์ด๋ฏธ์ง ํฌ๊ธฐ๋ฅผ ์ต์ํํ๋ ๊ธฐ์ ์ด๋ค.์ฌ๋ฌ ๋จ๊ณ์ ๋น๋๊ณผ์ ์ ๊ฑฐ์น๋ฉด์ ์ต์ข ์ด๋ฏธ์ง ํฌ๊ธฐ๋ฅผ ์ต์ํํ๋ค. ์ต์ข ์ด๋ฏธ์ง์๋ ์ฑ ์คํ์ ์ต์ํ์ ๊ตฌ์ฑ๋ง ์์ผ๋ฉด ๋๊ธฐ ๋๋ฌธ์ด๋ค! ์ด ์ฌ์ง์ด ๊ฐ๋ ์ ์ ์ค๋ช ํ๊ณ ์๋ค. ๋์ปค๋ ๊ฐ ๋ช ๋ น์ด(FROM, COPY, RUN ๋ฑ)๋ง๋ค ๋ ์ด์ด๋ก ์คํ๋๋ค.๊ทธ๋ฆฌ๊ณ FROM ๋ช ๋ น์ด๋ฅผ ๊ธฐ์ค์ผ๋ก ์คํ ์ด์ง๊ฐ ๋๋์ด์ง๋ค. ์คํ ์ด์ง: ํ๋์ ๋ ๋ฆฝ๋ ์ด๋ฏธ์ง ํ๊ฒฝ. ๋์ปคํ์ผ์์ FROM ๋ช ๋ น์ด๊ฐ 3๊ฐ ์๋ค๊ณ ๊ฐ์ ํ๋ฉด,๋ง์ง๋ง FROM ๋ช ๋ น์ด๊ฐ ํฌํจ๋ ์คํ ์ด์ง๊ฐ ์ต์ข ์ด๋ฏธ์ง๊ฐ ๋๋ค. ์๋ฅผ๋ค์ด, #1.๋น๋ ๋จ๊ณFROM eclipse-temurin:21-jdk-alpine AS builderWORKDIR /backCO..

ํ์ฌ ์์คํ ์์๋ ๋์ปค๋ฅผ ์ฌ์ฉํด ๋น๋ํ๊ณ ์ด๋ฏธ์ง๋ฅผ ์์ฑํด, EC2์ ๋ฐฐํฌํ๋ค. ์์ผ๋ก ์์์ด ๋ฐฐํฌ๊ฐ ๋ฐ๋ณต๋ ํ ๋ฐ, ์ด๋ฏธ์ง ์ฌ์ด์ฆ๋ฅผ ์ค์ด๊ณ ๋น๋์๊ฐ์ ๋จ์ถํ๋ ๊ฒ์ด ์๊ฐ๊ณผ ์ปดํจํ ์์์ ๋ญ๋น๋ฅผ ์ค์ผ ๊ฒ์ด๋ค! ํ๊ฒฝ: java 21, ์คํ๋ง๋ถํธ3.4 ๊ฒฐ๊ณผ์ ์ผ๋ก๋,๋์ปค์ ์บ์ฑ์ ํ์ฉํด์ ์๊ฐ์ 65์ด->40์ด๋ก ์ฝ 35%๊ฐ์ ์ ํ ์ ์์๋ค! 1. ํ์ฌ ๋์ปคํ์ผ# ๋น๋ ๋จ๊ณ#๋ฒ ์ด์ค ์ด๋ฏธ์ง ์์ฑ. ๋์ปค ์ปจํ ์ด๋๋ฅผ ํน์ ์ด๊ธฐ ์ด๋ฏธ์ง๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ธํ .FROM eclipse-temurin:21-jdk AS builderWORKDIR /backCOPY . .RUN ./gradlew clean build # ์คํ ๋จ๊ณ FROM eclipse-temurin:21-jreWORKDIR /backCOPY --from=builder..

ํ๋ก์ ํธ ๊ฐ๋ฐ์ ๋์ปค๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐฐํฌ๋ฅผ ํ๋ฉฐ, ๊ณผ์ ์ ์ข ๋ ์ต์ ํํ๊ณ ์ถ์ ์๊ฐ์ด ๋ค์๋ค. ์ค์ ์๋น์ค๋ฅผ ์ด์ํ๊ฒ ๋๋ค๋ฉด, ๋์ปค๋ก ์ด๋ฏธ์ง๋ฅผ ๋น๋ํ๊ณ ๋ฐฐํฌํ๋ ๊ณผ์ ์ด ์ ์์ด ๋ฐ๋ณต๋ ํ ๋ฐ,์ด๋ฏธ์ง ์ฉ๋์ ์ค์ด๊ณ ๋น๋์๊ฐ์ ๋จ์ถํ๋ ๊ฒ์ด ์๊ฐ๊ณผ ์ปดํจํ ์์์ ๋ญ๋น๋ฅผ ์์ ์ค ๊ฒ์ด๋ผ ์๊ฐํ๋ค. ๊ทธ๋์, ๋์ปค ์ต์ ํ๋ฅผ ์์ํ๋ฉฐ ์ฒซ ๋ฒ์งธ๋ก ์๋ ๋ณผ ๊ฒ์ JDK, JRE ์ด๋ฏธ์ง ๊ฒฝ๋ํ์๋ค.์๋ฐ๊ธฐ๋ฐ ํ๋ก์ ํธ๋ฅผ ๋น๋ํ๊ณ ์คํํ ๋ ์ฌ์ฉํ๋ JDK์ JRE์ ๋์ปค ์ด๋ฏธ์ง์ ์ฉ๋์ ๋ฎ์ถ ์ ์๋ ๋ฐฉ๋ฒ์ ์ฐพ์๊ณ , ์ด ๋ฐฉ๋ฒ์ ์ ์ฉํ๋๊ฒ ํฉ๋ฆฌ์ ์ธ์ง๋ฅผ ๋ฐ์ ธ๋ณด๊ณ ์ ํ๋ค. ๊ฒฐ๋ก ๋ถํฐ ๋งํ์๋ฉด, ์ด๋ฏธ์ง ์ฉ๋์ ๋ฎ์ถ๋๋ฐ์ ์ค๋ ์ฅ์ ๋ณด๋ค ๋จ์ (์ฑ๋ฅ์ด์, ํธํ์ฑ ๋ฌธ์ )์ด ํฌ๋ค๊ณ ์๊ฐํ๋ค. ์ฉ๋์ ์ ํ์ด ์ค์ํ(์๋ฒ ๋๋ ์์คํ ๊ฐ์) ์์คํ ์ด ์๋..

๋ค์ ๊ฐ์๋ฅผ ์ฐธ๊ณ ํ์ต๋๋ค.https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-mvc-1/dashboard ์คํ๋ง MVC 1ํธ - ๋ฐฑ์๋ ์น ๊ฐ๋ฐ ํต์ฌ ๊ธฐ์ ๊ฐ์ | ๊น์ํ - ์ธํ๋ฐ๊น์ํ | , ์๋ฆฌ๋ฅผ ์์์ผ ํต์ฌ์ด ๋ณด์ธ๋ค!๊น์ํ์ ์คํ๋ง MVC ๊ธฐ๋ณธํธ ๐จ๐ป ๐ ์๊ฐ ์ ํ์ธํด์ฃผ์ธ์! ๋ณธ ๊ฐ์๋ ์๋ฐ ์คํ๋ง ์์ ์ ๋ณต ์๋ฆฌ์ฆ์ ๋ค ๋ฒ์งธ ๊ฐ์์ ๋๋ค. ์ฐ์ํํ์ ๋ค ์ต์ฐ์www.inflearn.com ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ธฐ๋ณธ์ ์ดํดํด๋ณด์. ๋ชฉ์ฐจ 1. ์น ์๋ฒ, ์น ์ ํ๋ฆฌ์ผ์ด์ ์๋ฒ(WAS)2. ์๋ธ๋ฆฟ3. ๋์ ์์ฒญ- ๋ฉํฐ ์ฐ๋ ๋4. HTML, HTTP API, CSR, SSR5. ์๋ฐ ๋ฐฑ์๋ ์น ๊ธฐ์ ์ญ์ฌ 1. ์น ์๋ฒ, ์น ์ ํ๋ฆฌ์ผ์ด์ ์๋ฒ..
1. ๋ฌธ์ ec2์ ์ธ์คํด์ค์ ๊ณต๊ฐํ์ฅ์ด ํ์ํ๋ค.๋๋ฃ ๊ฐ๋ฐ์๊ฐ 8GB๋ก ์ค์ ํด์ ์์ฑํ๋๋ฐ, ํ๋ฆฌํฐ์ด๋ 30gb๊น์ง ๋ฌด๋ฃ์ด๋ค. ๋์ปค, ๋์ปค์ปดํฌ์ฆ, AWS CLI์ค์น๋ฅผ ํ๋ ค๋ฉด ๊ณต๊ฐ์ด ๋๋ํ ํ์ํ๊ณ ,8GB์์-> 30GB๋ก ํ์ฅํ๊ฒ ๋๋ค. 2. ํด๊ฒฐ1. AWS EC2 ์ธ์คํด์ค ๋ณผ๋ฅจ 30gb๋ก ์์ ํ 2. ์ธ์คํด์ค์ ์ ์ํด์ ํํฐ์ ํ์ฅ, ํ์ผ ์์คํ ํ์ฅ ์ ์งํํ๋ฉด ๋๋ค.์๋๋ ์งํํ ๋ด์ฉ.ubuntu@ip-172-31-33-135:~$ free -m total used free shared buff/cache availableMem: 957 413 73 2 ..

[๋์ปค๋ฅผ ๋์ ํ๊ฒ ๋ ์ด์ ]https://doublejune.tistory.com/64 [๋์ปค] ๋์ปค๋ฅผ ์ฌ์ฉํด์ ์คํ๋ง ์๋ฒ AWS EC2 ๋ฐฐํฌํ๊ธฐ (0)๊ณผ๊ฑฐ ์งํํ๋ ํ๋ก์ ํธ์ ๋์ปค๋ฅผ ๋์ ํด์ผ๊ฒ ๋ค๊ณ ๋๊ผ๋ค. Java, ์คํ๋ง ๋ถํธ๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐฑ์๋ ๊ฐ๋ฐ์ ํ๊ณ , AWS EC2์ ๋ฐฐํฌํ ํ๋ก์ ํธ์ด๋ค.๋์ปค๋ฅผ ์ฌ์ฉํ์ง ์๊ณ EC2 ์ธ์คํด์ค์ ์ง์ java์ Mysqdoublejune.tistory.com ์ด์ ๋ ๋ฒ์งธ ํ๋ก์ธ์ค 1. ๋ก์ปฌ์์ dockerfile์์ฑ ๋ฐ docker-compose์์ฑ. ๋ก์ปฌ์์ ๋์ปค ๋ฐฐํฌ ํ ํ ์คํธ.2. AWS EC2 ์ธ์คํด์ค์ ๋์ปค๋ก ๋ฐฐํฌ ํ ํ ์คํธ. 3. CD ์๋ํ. ๊น์์ ๋ฉ์ธ๋ธ๋์น ๋จธ์ง ์ EC2์ ๋์ปค์ด๋ฏธ์ง ์ ๋ฌ ํ ๋ฐฐํฌ. ๋ฅผ ์งํํด๋ณด์. ์ธํ ๋ฆฌ์ ์ด๋ฅผ ์ฌ์ฉํ๊ณ , ..

1. ๋ฌธ์ ์ํฉec2 ํ๋ฆฌํฐ์ด๋ก ์ฌ์ฉํ๋๋ฐ, ec2๊ฐ ์๊พธ ์ฃฝ์๋ค.๋์ปค ์ปดํฌ์ฆ๋ก ์คํ๋ง์๋ฒ 1๊ฐ, MySQL์๋ฒ 1๊ฐ๋ฅผ ์คํํ๋๋ฐ๋ฒ๋ฒ ๊ฑฐ๋ฆฌ๊ณ ์๊พธ ์ฃฝ์๋ค. ๋ค๋ฅธ ์ธ์คํด์ค์์ ๋์ปค๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ๋ฐฐํฌํ์ ๋๋ ์ ํ ์ด๋ฐ๋ฌธ์ ๊ฐ ์์๋๋ฐ,์ ๋์ปค๋ก ๋ฐฐํฌํ๋ค๊ณ ์ด๋ ๊ฒ ๋๋ ค์ง๊น ์๋ฌธ์ด ๋ค์๋๋ฐ ๋ฌธ์ ๋ฅผ ํ์ธํ๊ณ ํด๊ฒฐํ ์๊ฐ์ ์ํ๊ณ ,๊ณ์ ์ธ์คํด์ค๊ฐ ๋ป์ผ๋ฉด ์ค์ง์์ผฐ๋ค ์ด๋ฆฌ๋ฉด์ ์๊ฐ์ ๋ญ๋นํ๊ณ ์์๋ค... ๊ฒฐ๋ก ์, ์ฃผ ๋ฉ๋ชจ๋ฆฌ(RAM) ๋ถ์กฑ ๋๋ฌธ์ด์๊ณ , SWAP๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ค์ ํ์ฌ ํด๊ฒฐํ ์ ์์๋ค. 2. ์์ธ ์ฐพ๊ธฐ ๋ญ๊ฐ ๋ฌธ์ ์ผ๊น ์๊ฐํด์ ์ธ์คํด์ค๋ฅผ ๋น๊ตํด๋ดค๋ค. ์ ๋์๊ฐ๋ ์ธ์คํด์ค:ubuntu@ip-172-31-33-135:~$ free total used free ..

[๋์ปค๋ฅผ ๋์ ํ๊ฒ ๋ ์ด์ ]https://doublejune.tistory.com/64 [๋์ปค] ๋์ปค๋ฅผ ์ฌ์ฉํด์ ์คํ๋ง ์๋ฒ AWS EC2 ๋ฐฐํฌํ๊ธฐ (0)๊ณผ๊ฑฐ ์งํํ๋ ํ๋ก์ ํธ์ ๋์ปค๋ฅผ ๋์ ํด์ผ๊ฒ ๋ค๊ณ ๋๊ผ๋ค. Java, ์คํ๋ง ๋ถํธ๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐฑ์๋ ๊ฐ๋ฐ์ ํ๊ณ , AWS EC2์ ๋ฐฐํฌํ ํ๋ก์ ํธ์ด๋ค.๋์ปค๋ฅผ ์ฌ์ฉํ์ง ์๊ณ EC2 ์ธ์คํด์ค์ ์ง์ java์ Mysqdoublejune.tistory.com ์ฐ์ ์ฒซ ๋ฒ์งธ ํ๋ก์ธ์ค 1. ๋ก์ปฌ์์ dockerfile์์ฑ ๋ฐ docker-compose์์ฑ. ๋ก์ปฌ์์ ๋์ปค ๋ฐฐํฌ ํ ํ ์คํธ.2. AWS EC2 ์ธ์คํด์ค๋ฅผ ์๋ก ๋ง๋ค๊ณ , ๋์ปค๋ก ๋ฐฐํฌ ํ ํ ์คํธ.3. CD ์๋ํ. ๊น์์ ๋ฉ์ธ๋ธ๋์น ๋จธ์ง ์ EC2์ ๋์ปค์ด๋ฏธ์ง ์ ๋ฌ ํ ๋ฐฐํฌ. ๋ฅผ ์งํํด๋ณด์. ์ธํ ๋ฆฌ์ ์ด๋ฅผ ์ฌ..
๊ณผ๊ฑฐ ์งํํ๋ ํ๋ก์ ํธ์ ๋์ปค๋ฅผ ๋์ ํด์ผ๊ฒ ๋ค๊ณ ๋๊ผ๋ค. Java, ์คํ๋ง ๋ถํธ๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐฑ์๋ ๊ฐ๋ฐ์ ํ๊ณ , AWS EC2์ ๋ฐฐํฌํ ํ๋ก์ ํธ์ด๋ค.๋์ปค๋ฅผ ์ฌ์ฉํ์ง ์๊ณ EC2 ์ธ์คํด์ค์ ์ง์ java์ Mysql์๋ฒ๋ฅผ ์ค์นํ๋ค. 1. ๋์ปค ๋์ ๋ฐฐ๊ฒฝํ์ฌ ์์คํ ์ ํ์ฅ์ฑ์ ์์ด์ ๋นํจ์จ์ ์ด๋ค. ๋์ปค๋ฅผ ์ฌ์ฉํ์ง ์๋ ํ์ฌ ์ธํ๋ผ์์๋ ๋ถํ๊ฐ ์ปค์ง ๊ฒฝ์ฐ, EC2 ์ธ์คํด์ค๋ฅผ ์ถ๊ฐ ์์ฑํ๊ณ ์ถ๊ฐ ์์ฑํ EC2์ Jdk์ Mysql๋ฑ ํ๊ฒฝ์ ๋ค์ ์ค์นํด์ผํ๋ค. ๋ํ ํ๊ฒฝ(๋ฒ์ , ์ค์ )์ด ๊ธฐ์กด ์๋ฒ์ ์ผ์นํ๋์ง๋ ํ์ธํด์ผํ๋ค. 2. ๊ธฐ์ ์ฌ์ฉ ์ด์ ๋์ปค๋ ์ด์์ฑ์ด ์ข๋ค. ๋์ปค๋ฅผ ์ฌ์ฉํ๋ฉด, ํ์ฅ ์(์๋ก์ด EC2 ์ธ์คํด์ค ์์ฑ) ์ด๋ฏธ์ง๋ฅผ ๋ฐ๊ณ ์ปจํ ์ด๋๋ง ์คํํ๋ฉด ๋๋ค. ์ด๋ ๋ฐฐํฌ ๊ณผ์ ์์ ๋ฐ์ํ ์ ์๋ ํ๊ฒฝ๊ฐ..
1. ๋ฌธ์ ์ํฉ๋์ปค ์ปดํฌ์ฆ๋ฅผ ์ฌ์ฉํด์ ๋น๋๋ฅผ ํ๋๋ฐ ํด๋น ์๋ฌ๊ฐ ๋์๋ค.docker-compose build => [app builder 1/4] FROM docker.io/library/eclipse-temurin:21-jdk@sha256:6634936b2e8d90ee16eeb94420d71cd5e36ca677a4cf795a9ee1ee 0.0s => ERROR [app internal] load build context 6.4s => => transferring context: 174.59MB ..