
๋ฐฑ์๋ ํ์ ์ค ํ๋ถ๊ณผ ํ๋ก์ ํธ๋ฅผ ๋ง์น๊ณ ์ฝ๋๋ฆฌ๋ทฐ๋ฅผ ์งํํ์๋ค. ๋ง์ด ๊ฑฐ์ฐฝํด์ ์ฝ๋๋ฆฌ๋ทฐ์ด๊ณ ๋ณธ์ธ์ด ๊ตฌํํ ๋ถ๋ถ์ ๋ํด์ ์๋ก ์ด์ผ๊ธฐ๋ฅผ ๋๋๋ ์๊ฐ์ด์๋ค. ๋๋ ์๊ฒฉ์ฆ ์ ๋ณด๋ฅผ ์ด๋ค์์ผ๋ก ๋ถ๋ฌ์ค๋์ง์ ํ์ถํ๋ ๋ฐฉ๋ฒ๋ฑ์ ๋ํด์ ์ค๋ช ์ ํ๊ณ , ํ์๋ถ์ด ๊ถ๊ธํด ํ์ จ๋ ๊ณต๊ณต๋ฐ์ดํฐ ํฌํธ API๋ก ์ฝ๋๊ฐ์ ๋ฃ์ด์ ์ ๋ฌํ๋ ๋ถ๋ถ์ ์ค์ฌ์ผ๋ก ์ค๋ช ํ๋ค. ๊ทธ๋ฆฌ๊ณ ๋๋ ํ์๋ถ์ด ๊ตฌํํ๋ ์คํ๋ง์ํ๋ฆฌํฐ์ชฝ์ ๊ดํด์ ์ง๋ฌธ์ ํ๊ณ ๋ต๋ณ์ ๋ค์๋ค. ์ด๋ถ๋ถ์ ๋ํด์ ๊ธฐ๋ก์ ๋จ๊ธฐ๋ ค๊ณ ํ๋ค. SpringSecurity ์ค๋ช ์ํ๋ฆฌํฐ - > ํํฐ์ฒด์ธ ๋ด๋ถ์์ ์ด๋ค์์ผ๋ก ๋์ํ๋์ง๋ฅผ ํ์ธ ์ฌ์ฉ์๊ฐ ๋ก๊ทธ์ธํ๊ฒ ๋๋ฉด http request๊ฐ ๋ค์ด์ค๊ณ ๊ถํ์ ์์ฑํด์ (Authentication)ํ ํฐ์ ๋ฐ๊ธํ๋ค. ๊ถํ์ ์ ๋ฌํ๋ฉด PoviderMana..

๋ ํฌ๊ฐ๊ธฐ ์ฌ์ ๊ณผ์ ์๊ตฌ์ฌํญ JAVA & Spring ์ ํ 2. Repository ๋ช ์ wanted-pre-onboarding-backend 3. ๊นํ ๋ ํฌ ์ฃผ์๋ฅผ ์ ์ถํด์ผํ๋ค. 4. API ์๋ฒ๋ฅผ ๊ตฌํ 5. ๊ธฐ์ ์ ์ฑ์ฉ์ ์ํ ์น์๋น์ค๋ฅผ ๋ง๋ ๋ค. ํ์ฌ๋ ์ฑ์ฉ๊ณต๊ณ ๋ฅผ ์์ฑํ๊ณ , ์ด์ ์ฌ์ฉ์๋ ์ง์ํ๋ค. 6. DB๋ postgreSQL ์ ํ ์ฑ์ฉ๊ณต๊ณ ๋ฅผ ๋ฑ๋ก ์ฑ์ฉ๊ณต๊ณ ๋ฅผ ์์ ์ฑ์ฉ๊ณต๊ณ ๋ฅผ ์ญ์ ์ฑ์ฉ๊ณต๊ณ ๋ชฉ๋ก์ ๊ฐ์ ธ์จ๋ค ์ฑ์ฉ๊ณต๊ณ ๊ฒ์ ๊ธฐ๋ฅ์ ๊ตฌํ ( some/url?search=์ํฐ๋) ์ฑ์ฉ์์ธ ํ์ด์ง๋ฅผ ๊ตฌ์ฑ > ์ฑ์ฉ ๋ด์ฉ์ด ์ถ๊ฐ์ ์ผ๋ก ๋ด๊ฒจ ์์, ํด๋น ํ์ฌ๊ฐ ์ฌ๋ฆฐ ๋ค๋ฅธ ์ฑ์ฉ๊ณต๊ณ ๊ฐ ์ถ๊ฐ์ ์ผ๋ก ํฌํจ๋๋ค. ์ฌ์ฉ์๊ฐ ๊ณต๊ณ ์ ์ง์(์ฌ์ฉ์๋ 1ํ๋ง ์ง์๊ฐ๋ฅ) ํ์ฌ, ์ฌ์ฉ์, ์ฑ์ฉ๊ณต๊ณ , ์ง์๋ด์ญ์ ํ์ ๋ชจ๋ธ, ํ๋๋ช ์ ์์์ด..

BE ๊ด์ ์์์ ํ๋ก์ ํธ ์๊ฐ ์ฝ๋์คํ ์ด์ธ ๋ฐฑ์๋ ๋ถํธ์บ ํ๋ฅผ ๋ง์น๊ณ ์ฒ์์ผ๋ก ํํ๋ก์ ํธ๋ฅผ ์งํํ์๋ค. ์คํ์ค๋ฒํ๋ก์ฐ ํด๋ก ์ฝ๋ฉ์ด๋ผ๋ ์ฃผ์ ๋ก FE 3๋ช , BE 3๋ช ์ด ํ์ ํ๋ ๋ฐฉ์์ผ๋ก ์งํ๋์๋ค. ํ์๋ค๊ณผ ํจ๊ป ์งํํ ์ฒซ๋ฒ์งธ ํ๋ก์ ํธ์ฌ์ ์ ์ ์ด ๋์น๊ณ , ๋์๊ฒ ์ ๋ง ์์คํ ๊ฒฝํ์ด์๋ค. ๊ธฐ๊ฐ 2023์ 08์04์ผ ~ 08์ 23์ผ (2์ฃผ) ๋ฐฑ์๋ ๊ธฐ์ ์คํ Java 11.0.20 Spring Boot 2.7.14 Spring Data JPA MySQL H2 (๊ฐ๋ฐ๊ณผ์ ) Spring Security ๋ฐฐํฌ : AWS + RDS CICD : Github Action + AWS CodeDeploy ํ ์ด๋ธ ๋ช ์ธ์ ์ฌ์ฉ์ ์๊ตฌ์ฌํญ ์ ์์๋ฅผ ์์ฑํ๋ค DB๊ฐ ํ์ํ ๋ถ๋ถ์ ๋ถ์ํด๋ณด๋ ํ์๊ฐ์ ์ ํด์ผํ๋ฏ๋ก ํ์ ํ ์ด๋ธ์ด ํ์..
๐ ๊ตฌํ ์ค๋ช ์ ๊ฐ ์ฌ์ฉํ Java version์ 11.0.2๋ฅผ ์ฌ์ฉํ์๊ณ , Spring Boot ๋ 2.7.14 ๋ฅผ ์ฌ์ฉํ์์ต๋๋ค. ์๋ฐ 11์ ๊ฒฝ์ฐ LTS ๋ฒ์ ์ด๊ณ , ์๋ฐ 8๋ณด๋ค ๋ง์ ๊ธฐ๋ฅ์ ์ง์ํ์ฌ 11๋ฒ์ ์ ์ ํํ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ DB์ ๊ฒฝ์ฐ์๋ ๊ฐ๋ฐ ๊ณผ์ ์์ H2 DB๋ฅผ ์ฌ์ฉํ์๊ณ , CI/CD ์ดํ์ AWS RDS์ MySQL DB๋ฅผ ์ฌ์ฉํ์์ต๋๋ค. DB ์ค๊ณ ๋ฐ API ๋ฌธ์ ์์ฑ DB ์ค๊ณ ํ์๊ณผ ์ง๋ฌธ์ ๊ฒฝ์ฐ ํ์ 1๋ช ์ด ์ฌ๋ฌ ๊ฐ์ ์ง๋ฌธ์ ์์ฑํ๊ฑฐ๋ ์์ ์์ฑํ์ง ์์ ์๋ ์๊ณ , ๋ต๋ณ์ ๊ฒฝ์ฐ๋ ํ์๊ณผ์ ๊ด๊ณ๋ ๋ง์ฐฌ๊ฐ์ง์ด๋ฉฐ ์ง๋ฌธ 1๊ฐ์ ๋ต๋ณ์ด ์ฌ๋ฌ ๊ฐ ๋ฌ๋ฆด ์ ์์ผ๋ฏ๋ก ์์ ๊ฐ์ด ์ค๊ณํ์์ต๋๋ค. ํ๊ทธ๋ ์ง๋ฌธ์ ์ฌ๋ฌ ๊ฐ๊ฐ ๋ฌ๋ฆด ์ ์๋ ํํ๋ก ์ค๊ณํ์์ต๋๋ค. N:M ๊ด๊ณ์ธ ํ๊ทธ์ ์ง๋ฌธ์ ๊ด๊ณ๋ฅผ..

Pre Project ์์! - ๊ธฐ๊ฐ : 08์ 04์ผ ~ 08์ 23์ผ ๊น์ง - ์ฃผ์ : stackoverflow ํด๋ก ์ฝ๋ฉ ์ฝ๋์คํ ์ด์ธ ์น ๊ฐ๋ฐ๊ณผ์ ์ ํ๋ก์ ํธ๋ ํ๋ก ํธ์๋์ ๋ฐฑ์๋๊ณผ์ ์ ๋ฃ๋ ์๊ฐ์๋ค์ด ํจ๊ป ๋ชจ์ฌ์ ํ๋ก์ ํธ๋ฅผ ์งํํ๋ค. ํ๋ฆฌ ํ๋ก์ ํธ์ ๊ฒฝ์ฐ์๋ ๊ฐ์ ์คํ์ค๋ฒํ๋ก์ฐ ํด๋ก ์ฝ๋ฉ์ ์ฃผ์ ๋ก ๊ฐ๋ฐ์ ํ๋๋ฐ ๋์ ๊ฒฝ์ฐ์ ์๋ฌด๋ฐ ์ ๋ณด๋ ๊ฒฝํ ์์ด ์์์ ํ๋ค๋ณด๋ ์ฒ์์ ์กฐ๊ธ ๊ฑฑ์ ์ด ๋จผ์ ๋ค์๋๊ฒ๊ฐ๋ค. ๋๋ค์ผ๋ก ํ๋ก ํธ์๋ ์๊ฐ์ 3๋ช , ๋ด๊ฐ ์ํด์๋ ๋ฐฑ์๋ 3๋ช ์ด ๊ฐ์ ํ์ผ๋ก ๋ฐฐ์ ๋์๋ค. ์ฒ์ ํ์๋ค๊ณผ ๋ง๋์ ์ด์ํ๊ฒ ์ธ์ฌ๋ฅผ ๋๋๊ณ ์๊ธฐ์๊ฐ๋ฅผ ๊ฐ๋จํ๊ฒ ์งํํ์๋ค. ๋ค๋ค ์ฒ์์ด๋ผ์ ๊ทธ๋ฐ์ง ๊ต~์ฅํ ์ด์ํ๋ค. ์ฒ์ ๋ง๋์ฌ๋๋ค๊ณผ ํ์ ๊ตฌ์ฑํ๊ณ ์ด์ผ๊ธฐ๋ฅผ ๋๋๋๊ฒ์ด ์ ๊ธฐํ๊ธฐ๋ ํ๊ณ ์ฌ๋ฏธ๋ ์์๋ค. ๋คํ์ธ์ง๋ ..

๋์ปค ๊ธฐ๋ณธ ์ ๋ฆฌ Port Forwading & Volume mount ์น๋ธ๋ผ์ฐ์ ๋ฅผ ํตํด http://example.com:80/index.html์ ์ ๊ทผํ๊ฒ ๋๋ฉด, ์๋ฒ host์ 80ํฌํธ๋ก ์ ๊ทผ์ ํ๊ฒ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ปจํ ์ด๋์ 80ํฌํธ์ ์ฐ๊ฒฐ์ด๋๊ณ ์น์๋ฒ๋ฅผ ํตํด index.html์ ์คํํ๊ฒ ๋๋ค. Container LifeCycle DockerFile ๋์๋ฐฉ์ ๋์ปคํ์ผ์ build ํ๊ฒ๋๋ฉด ์ด๋ฏธ์ง๋ฅผ ์ป์์์๊ณ ์ด๋ฅผ Docker Hub๋ก Pull / Push ํ ์์๋ค. ๊ทธ๋ฆฌ๊ณ ์ด๋ฏธ์ง๋ฅผ Runํ์ฌ ์ปจํ ์ด๋๋ฅผ ์์ฑํ๋ค. Docker Image upload Docker Hub Docker hub์ ์ด๋ฏธ์ง๋ฅผ ๋ฑ๋กํ๋ ค๋ฉด ๊ท์น์ ์ค์ํด์ผ ํ๋ค. [Docker hub ์ฌ์ฉ์๋ช ]/[์ด๋ฏธ์ง๋ช ]:[ํ๊ทธ๋ช ] ํ๊ทธ๋ฐฉ๋ฒ 1...

[ ๋์ปค ์ค์น ] Get Docker docs.docker.com 2023.08.03 - [Deploy๐/Docker + K8s] - Docker ๋? Docker ๋? Docker ๋์ปค๋ ์ปจํ ์ด๋ ๊ธฐ๋ฐ ๊ฐ์ํ ๋๊ตฌ์ด๋ค. ์ ํ๋ฆฌ์ผ์ด์ ์ ์ปจํ ์ด๋๋ผ๋ ๋จ์๋ก ๊ฒฉ๋ฆฌํ๊ณ ์คํํ๊ณ ๋ฐฐํฌํ๋ ๊ธฐ์ ์ ๋งํ๋ค. ๊ทธ๋ผ ์ฌ๊ธฐ์ ๋งํ๋ ์ปจํ ์ด๋๋ ๋ฌด์์ผ๊น? Container ์ปจํ ์ด๋๋ togll.tistory.com ๋์ปค ์๊ฐ ์ปจํ ์ด๋ ๊ธฐ๋ฐ์ ํน์ง ์ปจํ ์ด๋๋ ๋ฆฌ๋ ์ค ์ปค๋์ ๊ธฐ๋ฅ์ ์ฌ์ฉํ์ฌ ๋ง๋ค์ด์ง๋ค. - chroot : ํ์ผ ์์คํ ์ ๊ฒฉ๋ฆฌํ๋ค. - namespace : ํ๋ก์ธ์ค๋ฅผ ๊ฒฉ๋ฆฌํ๋ค. - cgroup : ํ๋์จ์ด ์์์ ๊ฒฉ๋ฆฌํ๋ค. ํ๋ก์ธ์ค ๋จ์์ ๊ฒฉ๋ฆฌํ๊ฒฝ์ ๊ฐ์ง๊ฒ ๋๋ค. Docker GUI Docker Desktop ..

์ด๋์ section04๊น์ง ๋ฌ๋ฆฌ๊ฒ ๋์๋ค! ๋ถํธ์บ ํ๋ฅผ ์์ํ์ง 4๊ฐ์์ด ์ง๋ ์์ ์์ ํ๊ณ ๋ฅผ ์์ฑํด ๋ณด๋ ค๊ณ ํ๋ค. 1. ๋ชฉํ ์๊ธฐ - ๊ฒฝ์ ์ ์ผ๋ก ์์ ๋๊ณ ๋ด๊ฐ ํ๋์ผ์ด ๋ง์กฑ์ค๋ฌ์ด ๊ฐ๋ฐ์ - ์ฃผ์ด์ง ์ํฉ์ ์ต์ ์ ๋คํ๋ ์ฌ๋์ด ๋์. - ๋ฆฌ๋์ฝ ์๊ณ , ์๋๋ฐฉ์ ์กด์คํ ์ค ์๋ ์ฌ๋์ด ๋์. section04๊ฐ ๋๋ ์ง๊ธ๋ถํฐ๋ ํ๋ก์ ํธ๋ฅผ ์งํํ๊ฒ ๋๋ค. ์ง๊ธ๊น์ง๋ ๋ฐฉ์์ ๋ํผ์ ๊ณต๋ถํ๋๊ฒ์ด ๋ค์์ง๋ง, ์ด์ ์ฌ๋๋ค๊ณผ ์ด์ธ๋ ค์ ๋ฌด์ธ๊ฐ๋ฅผ ๋ง๋ค์ด ๊ฐ๋ค๋๊ฒ์ด ๊ธฐ๋๋๊ธฐ๋ ํ๊ณ ๊ฑฑ์ ๋ ๋๋๊ฒ๊ฐ๋ค. ํ๋ก์ ํธ๋ฅผ ์งํํ๋ฉด์ ๋ด ์ฑ๊ฒฉ์ ๋จผ์ ๋ฆฌ๋์ ์ญํ ์ ์์ํด์ ํ์ง๋ ์๊ฒ ์ง๋ง, ์ํฉ์ด ์๊ธด๋ค๋ฉด ๋์ ํด ๋ณผ ์ํฅ์ด ์๋ค. ์ด๋ค์์ผ๋ก ์์ ์ ์ด๋์ด ๋๊ฐ์ผํ ์ง, ๋ํ ๋ ํผ์๋ง์ ์ปจํธ๋กค ํ๋๊ฒ์ด ์๋ ๋ค๋ฅธ ๋๊ตฐ๊ฐ์ ํจ๊ป ๊ณต๋์ ๋ชฉ..

Section03 ํ๊ณ Section02 ํ๊ณ ์ ํจ๊ป ์์ฑํ๋ ๊ด๊ณ๋ก ์ด๋ฒ์๋ KPT๋ฐฉ์์ ์ ์ฉํ์ง ์๊ณ ํ๊ณ ๋ฅผ ์์ฑํด๋ณด๋ ค๊ณ ํ๋ค. Section03์ Spring์ ๋ํด์ ์์ธํ๊ฒ ๋ฐฐ์ธ์์๋ ๊ธฐํ์๋ค. ์ด๋ฒ ์น์ ๊ฐ์ฌ๋ถ(์ ์๋)์ ์ ๋ง ์น์ ํ์๊ณ ์ฒ์ ๋ฐฐ์ฐ๋ ๋ถ๋ค๋ ๋ฐ๋ผ๊ฐ์์๋๋ก ์ด์ฌํ ์ง๋ํด์ฃผ์๋ ๋ถ์ด์๊ณ , ์น์ ์ด ์งํ๋๋ ๊ธฐ๊ฐ๋์ ๋๋ ์ด์ฌํ๋ง ํ๋ค๋ฉด ์๋ฐ๋ผ๊ฐ์์์๋ ์๊ธฐ์๋ค. ๋ฐฉํต๋ ๋ง์ง๋งํ๊ธฐ ๊ธฐ๋ง๊ณ ์ฌ์ ํจ๊ป ๊ฒน์น๊ธฐ๋ํ๊ณ ์ด๊ฒ์ ๊ฒ ์ผ๋ค์ด ์์ด์ ์์ฐํ ์น์ ์ ๋ชฐ์ ํด์ ์ง์คํ ์ ๋๋ฅผ ํผ์ผํธ๋ก ๋ฐ์ง์๋ฉด 50% ์๋๊ฒ๊ฐ๋ค. ๋ถ์กฑํ๋ ๊ฒ๋ค์ ๋์ด์ผ๋ณด์๋ฉด ์ผ๋จ ๊ณต๋ถ ๋ฐฉ์์ ๋ฌธ์ ๊ฐ ์กฐ๊ธ์ฉ ์๊ฒผ๋ค. ์์์ ์์ง ๋์น๊ฒ ์์ํด๋ ๋๊น์ง ๊ฐ์ ํ ์ ์ ์ ์งํ๋๊ฒ ํ๋ ๋ด ์ฑ๊ฒฉ์ด 3๊ฐ์์ฏค ์ง๋๋ ์ฌ์ฌ ๋์๋๊ฒ๊ฐ๋ค. ๋น..

Section02๊ฐ ๋๋์ง ํ๋ฌ์ด ๋์ด๊ฐ๋ ์ง๊ธ์์์ผ ํ๊ณ ๋ธ๋ก๊น ์ ์์ฑํ์ง์์๋ ๊ฒ์ด ๋ ์ฌ๋๋ค. ๋ฆ์์ง๋ง ํ๋ฒ๋ ์๊ธฐ์ํฌ๊ฒธ ์์ฑํด๋ณด๋ ค๊ณ ํ๋ค. 1. ๋ชฉํ ์๊ธฐ - ๊ฒฝ์ ์ ์ผ๋ก ์์ ๋๊ณ ๋ด๊ฐ ํ๋์ผ์ด ๋ง์กฑ์ค๋ฌ์ด ๊ฐ๋ฐ์ - ์ฃผ์ด์ง ์ํฉ์ ์ต์ ์ ๋คํ๋ ์ฌ๋์ด ๋์. Section01์์ ์์ฑํ๋ ๊ฒฝ์ ์ ์ผ๋ก ์์ ๋๊ณ ๋ด๊ฐ ํ๋์ผ์ด ๋ง์กฑ์ค๋ฌ์ด ๊ฐ๋ฐ์๊ฐ ๋ ์์์์ง Section02์ 03์ ๊ฑฐ์น๋ฉด์ ์๊ฐ์ ๋ง์ด ํ๊ฒ๋์๋ค. ๋ด๊ฐ ํ๊ณ ์๋ ๊ณต๋ถ ๋ฐฉ๋ฒ์ด ์กฐ๊ธ์ ๋ฌธ์ ๊ฐ ์๋ค๋๊ฒ์ ๋๊ผ๋ค. ์ง๊ธ๊น์ง ๋ด๊ฐ ํด์๋ ๊ณต๋ถ๋ค์ ๋ํ๊ต์ํ๊ณผ ์๊ฒฉ์ฆ๊ณผ ๊ฐ์ ์ ์๋ฅผ ์ํ ๊ณต๋ถ๋ค์ด์๋ค. ๊ทธ๋ฆฌ๊ณ ๋ถํธ์บ ํ๋ฅผ ์์ํ๊ณ ์ฌ๊ธฐ์ ๊ณต๋ถ๋ฅผ ํ๋ ๋ฐฉ์๋ ๊ทธ์ ํฌ๊ฒ ๋ค๋ฅด์ง์์๋ค. ์ ์๋ฅผ ์ํ ๊ณต๋ถ๋ ๊ฐ๋ ์ ์ฝ๊ณ ์ธ์ฐ๋ ์์ผ๋ก ์ ๊ทผ์ ํ์๊ณ ๊ทธ ๋ฐฉ์..