EC2 ์ธ์คํด์ค ๊ธฐ๋ณธ ์ดํด
1. EC2 ์ธ์คํด์ค๋ฅผ ์ด๋ป๊ฒ ์์ฑํ๊ณ ์ด๋ค ์ค์ ์ ํ๋?
- Amazon Linux 2023์ผ๋ก t2.micro ์ธ์คํด์ค๋ฅผ ์์ฑํ๊ณ , SSH ์ ์์ ์ํด ๋ณด์ ๊ทธ๋ฃน์ TCP 22๋ฒ ํฌํธ๋ฅผ ์ IP๋ก ์ด์์ต๋๋ค.
์ธ์คํด์ค๋ ํผ๋ธ๋ฆญ IP๋ฅผ ๊ณ ์ ํ๊ณ , ๋์ค์ GItHub์์ Spring ํ๋ก์ ํธ๋ฅผ clone ๋ฐ์ ์คํํ์ต๋๋ค.
2. EC2์ SSH ์ ์์ด ๋์ง ์๋ ๋ฌธ์ ๋ฅผ ์ด๋ป๊ฒ ํด๊ฒฐํ๋?
- ๋ณด์ ๊ทธ๋ฃน ์ธ๋ฐ์ด๋ ๊ท์น์์ SSH ํฌํธ 22๊ฐ 0.0.0.0/0์ผ๋ก ์ด๋ ค ์๋์ง ํ์ธํ๊ณ , ์ธ์คํด์ค๊ฐ ์คํ ์ค์ธ์ง ์ํ ํ์ธ ํ ์ฌ๋ถํ ๋ ์๋ํ์ต๋๋ค. ๋ํ ์ธ์คํด์ค๊ฐ ์ค์ง ํ ์์๋์ง ์๋ ๋ฌธ์ ๋ ์ํ ๋ก๊ทธ๋ ์์คํ ๋ก๊ทธ ํ์ธ์ ํตํด ์ ๊ทผํ์ต๋๋ค.
3. EC2๋ฅผ ์ฌ์ฉํ๋ฉด์ ๊ฐ์ฅ ์ค์ํ๊ฒ ์๊ฐํ๋ ๋ณด์ ์ค์ ์ ๋ฌด์์ธ๊ฐ?
- ๋ณด์ ๊ทธ๋ฃน ์ค์ ์ ๋๋ค. SSH ์ ๊ทผ์ ๊ผญ ํน์ IP๋ง ํ์ฉํ๊ณ , ์ ํ๋ฆฌ์ผ์ด์ ์คํ ์ ํฌํธ 8080 ๋๋ 80๋ง ์ธ๋ถ์ ์ด์ด์ผ ํ๋ค๋ ์ ์ ํญ์ ์ ๊ฒฝ ์๋๋ค.
4. ํผ๋ธ๋ฆญ IP์ ํ๋ผ์ด๋น IP์ ์ฐจ์ด๋ฅผ ์ค๋ช ํด์ฃผ์ธ์.
- ํผ๋ธ๋ฆญ IP๋ ์ธํฐ๋ท์์ ์ ๊ทผ ๊ฐ๋ฅํ IP์ด๊ณ , ํ๋ผ์ด๋น IP๋ ๋ด๋ถ ํต์ ์ฉ์ ๋๋ค. EC2๋ VPC ๋ด์์ ํ๋ผ์ด๋น IP๋ฅผ ๊ธฐ๋ณธ์ผ๋ก ํ ๋นํ๊ณ , ์ธ๋ถ ์ ๊ทผ์ ์ํด ํผ๋ธ๋ฆฟ IP๋ฅผ ์ฐ๊ฒฐํฉ๋๋ค.
5. EC2์์ ๋ฆฌ๋ ์ค ๋ช ๋ น์ด๋ก ํ๋ก์ ํธ๋ฅผ ์ด๋ป๊ฒ ์ธํ ํ๋์?
- Git์ผ๋ก clone ํ yum install ๋ช ๋ น์ด๋ก Java, Node.js, Git ๋ฑ์ ์ค์นํ๊ณ , ./gradlew build๋ก ํ๋ก์ ํธ๋ฅผ ๋น๋ํ์ต๋๋ค. java -version ๋ฑ์ผ๋ก ํ๊ฒฝ ํ์ธ๋ ํจ๊ป ํ์ต๋๋ค.
Gradle, Java ๋น๋ ๋ฌธ์ ํด๊ฒฐ
6. Gradle ๋น๋์ Java toolchain ์๋ฌ๊ฐ ๋ฐ์ํ๋๋ฐ ์ด๋ป๊ฒ ํด๊ฒฐํ๋?
- Gradle์์ Java toolchain ์ค์ ์ด ์๊ตฌ๋์๋๋ฐ, EC2์์ ์ค์น๋ Java๋ฅผ ์ ๋๋ก ๊ฐ์งํ์ง ๋ชปํ์ต๋๋ค. toolchain ์ค์ ์ ์ฃผ์ ์ฒ๋ฆฌํ๊ฑฐ๋, JAVA_HOME ํ๊ฒฝ๋ณ์๋ฅผ ์๋์ผ๋ก ์ง์ ํ์ฌ ํด๊ฒฐํ์ต๋๋ค.
7. Cannot find a Java installation ์๋ฌ์ ์์ธ์ ๋ญ๋ผ๊ณ ์๊ฐํ๋?
- Gradle์ด ์๊ตฌํ๋ toolchain ์ ๋ณด์ EC2์ ์ค์น๋ JDK ๊ฒฝ๋ก๊ฐ ์ผ์นํ์ง ์๊ฑฐ๋, JAVA_HOME์ด ์ค์ ๋์ง ์์ ๊ฒ์ด ์์ธ์ด์์ต๋๋ค.
8. --refresh-dependencies ์ต์ ์ ์ด๋ค ์ญํ ์ ํ๋?
- ๋ก์ปฌ Gradle ์บ์๋ฅผ ๋ฌด์ํ๊ณ ๋ชจ๋ ์์กด์ฑ์ ์๊ฒฉ ์ ์ฅ์์ ๋ค์ ๋ฐ๋ ๋ช ๋ น์ด์ ๋๋ค. ์ข ์์ฑ ์ค๋ฅ๋ ์บ์ ๋ฌธ์ ํด๊ฒฐ์ ์ ์ฉํฉ๋๋ค.
9. build.gradle ํ์ผ์์ ์ด๋ค ์์กด์ฑ์ ์ค์ ํ๊ณ ๊ทธ ์ด์ ๋?
- Spring Boot starter-web, JPA, JDBC, Thymeleaf, Lombok ๋ฑ์ ์ถ๊ฐํ์ต๋๋ค. ๊ฐ๊ฐ REST API ๊ตฌ์ฑ, DB ์ฐ๋, ํ ํ๋ฆฟ ์์ง, ์ฝ๋ ๊ฐ๊ฒฐํ๋ฅผ ์ํด ํ์ํ์ต๋๋ค.
10. ./gradlew build์ boot.Jar์ ์ฐจ์ด๋ ๋ฌด์์ธ๊ฐ?
- build๋ ์ ์ฒด ๋น๋ ๊ณผ์ ์ ํฌํจํ๊ณ , bootJar๋ ์คํ ๊ฐ๋ฅํ Spring Boot ์ ํ๋ฆฌ์ผ์ด์ JAR ํ์ผ์ ๋ง๋๋ ์์ ์ ๋๋ค.
์ค์ ๋ฌธ์ ํด๊ฒฐ ๋ฅ๋ ฅ (์๋ฌ/๋ฐฐํฌ ๊ด๋ จ)
11. 10๋ถ ์ด์ ๋น๋๊ฐ ๋ฉ์ถ ์ ์ด ์์์ฃ ? ์์ธ์ ๋ญ์๊ณ ์ด๋ป๊ฒ ๋์ํ๋์?
- Gradle ์์กด์ฑ ํด์์ด ์ค๋ ๊ฑธ๋ ค ๋ฌดํ ๋๊ธฐ์ ๋น ์ก์ต๋๋ค. --no-daemon์ผ๋ก ์คํํ๊ณ , ๋คํธ์ํฌ๋ ์บ์ ๋ฌธ์ ๋ฅผ ํ์ธํ๋ฉฐ ์๋ ์ข ๋ฃํ๊ณ ์ฌ์๋ํ์ต๋๋ค.
12. EC2 ์ธ์คํด์ค๊ฐ ์ฌ๋ถํ ํ ์์๋์ง ์์์ ๋ ์ด๋ป๊ฒ ๋ถ์ํ๋?
- ์ธ์คํด์ค ์ํ๊ฐ ๋น์ ์์ ์ผ๋ก ์ค์ง๋๋ฉด์ ์์ ์ค๋ฅ๊ฐ ๋ฐ์ํ๋๋ฐ, ์ด๋ ๋ด๋ถ ๋์คํฌ ์์ ๋๋ ์ปค๋ ํจ๋ ๋๋ฌธ์ผ ์ ์์ต๋๋ค.
์ธ์คํด์ค ์ํ ๋ก๊ทธ ํ์ธ๊ณผ ์ฌ์์ฑ๋ ๊ณ ๋ คํ์ต๋๋ค.
13. Gradle์์ Java toolchain ์ค์ ์ ์ฃผ์ ์ฒ๋ฆฌํ ์ด์ ๋?
- Gradle์ด ์๋์ผ๋ก ์ ์ ํ Java ์ค์น๋ฅผ ๋ชป ์ฐพ์ ๊ฒฝ์ฐ ๋น๋๊ฐ ์ค๋จ๋ฉ๋๋ค. ์๋์ผ๋ก ์ค์นํ Java๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด toolchain ๋์ ๊ธฐ๋ณธ ์ค์ ์ ์ฐ๋ ๊ฒ ์์ ์ ์ด์์ต๋๋ค.
14. ๋น๋๋ฅผ ์ํ ์ต์ํ์ ํ๊ฒฝ์ ์ด๋ป๊ฒ ์ธํ ํ๋?
- Java 17, Gradle, Git, Node.js ์ค์น์ git clone, gradlew build, java -jar๋ก ํ๋ก์ ํธ๋ฅผ ์คํํ ์ ์๋๋ก ๊ตฌ์ฑํ์ต๋๋ค.
15. Mac์์๋ Ctrl+C๊ฐ ์๋ผ์ ์ด๋ป๊ฒ ๊ฐ์ ์ข ๋ฃํ๋?
- EC2์์ ์น ์ฐ๊ฒฐ๋ก ์คํํ ๊ฒฝ์ฐ ๋ธ๋ผ์ฐ์ ์์ ๋ช ๋ น์ด ์ ๋ ฅ ์ค๋จ์ด ์ด๋ ค์ฐ๋ฏ๋ก, ์ธ์คํด์ค๋ฅผ ์ง์ ์ฌ๋ถํ ํ๊ฑฐ๋ ๋ธ๋ผ์ฐ์ ํญ์ ๋ซ์ SSH ์ฐ๊ฒฐ์ ๋์์ต๋๋ค.
์ค๋ฌด ์ ์ฉ ๊ด์ / DevOps ๊ด์ ์ง๋ฌธ
16. ์ด ํ๋ก์ ํธ๋ฅผ DevOps ๊ด์ ์์ ๋ณธ๋ค๋ฉด ์ด๋ค ์ค๋น ๋จ๊ณ์ธ๊ฐ?
- ํ๋ก์ ํธ๋ฅผ ํด๋ผ์ฐ๋์์ ์ง์ ๋น๋ํ๊ณ ์คํํ๋ ๊ฒฝํ์ ๋ฐฐํฌ ์๋ํ์ ์ธํ๋ผ ๊ตฌ์ฑ์ ์ถ๋ฐ์ ์ ๋๋ค. CI/CD๋ก ํ์ฅํ๊ธฐ ์ํ ์ฌ์ ์ค๋น๋ผ๊ณ ์๊ฐํฉ๋๋ค.
17. ์์ผ๋ก ์ด๋ค ์์ผ๋ก ์ด ๋ฐฐํฌ๋ฅผ ์๋ํํ๊ณ ์ถ๋?
- GitHub Actions์์ push ์ Gradle ๋น๋๋ฅผ ํธ๋ฆฌ๊ฑฐํ๊ณ , EC2๋ก ์๋ ๋ฐฐํฌํ๊ฑฐ๋, AWS CodeDeply์ ์ฐ๊ฒฐํ๊ณ ์ถ์ต๋๋ค.
18. EC2๊ฐ ์๋ ๋ค๋ฅธ ๋ฐฐํฌ ๋ฐฉ์์ผ๋ก ์ ํํ๋ค๋ฉด ์ด๋ค ๊ธฐ์ ์ ๊ณ ๋ คํ๋?
Docker๋ก ์ด๋ฏธ์งํํ์ฌ ECS ๋๋ EKS๋ก ์ ํํ๊ฑฐ๋, AWS Elastic Beanstalk์ผ๋ก ๊ฐ๋จํ๊ฒ ๋ฐฐํฌ ์๋ํํ๋ ๋ฐฉ์๋ ๊ณ ๋ คํ ์ ์์ต๋๋ค.
19. ์ด ๊ฒฝํ์ด ๊ฐ๋ฐ์๋ก์ ์ด๋ค ์ญ๋ ํฅ์์ผ๋ก ์ด์ด์ก๋ค๊ณ ์๊ฐํ๋?
๋จ์ํ ์ฝ๋๋ฅผ ์์ฑํ๋ ๊ฒ์ ๋์ด, ์ค์ ์คํ ํ๊ฒฝ ๊ตฌ์ฑ, ๋ฌธ์ ํด๊ฒฐ, ๋ก๊ทธ ๋ถ์, ๋ณด์ ์ค์ ๊น์ง ์ ์ฒด ํ๋ฆ์ ์ง์ ๊ฒฝํํ๋ฉฐ ๋ฌธ์ ํด๊ฒฐ ๋ฅ๋ ฅ์ด ํฌ๊ฒ ํฅ์๋์ต๋๋ค.
20. ๋น์ ๊ณต์๋ก์ ์ด๋ฐ ํด๋ผ์ฐ๋ ์ธํ๋ผ ๊ฒฝํ์ ์ ์ค์ํ๊ฒ ์๊ฐํ๋?
๋จ์ํ ์ฝ๋ฉ์ ๋์ด์ ์๋น์ค๊ฐ '๋์๊ฐ๋ ์ ์ฒด ํ๋ฆ'์ ์ดํดํ๊ณ ์ค์ตํด๋ณด๋ ๊ฒฝํ์ด ๊ฐ๋ฐ์๋ก์ ์ค๋ฌด ์ ์๋ ฅ์ ํค์์ค๋ค๊ณ ๋๊ผ๊ธฐ ๋๋ฌธ์ ๋๋ค.
์ด๋ฒ ๊ฒฝํ์ ๋จ์ํ ํ๋ก์ ํธ ์คํ์ ๋์ด์ ์ค์ ์๋น์ค ์ด์ ํ๊ฒฝ์ ์ง์ ๊ฒฝํํด๋ณธ ์์คํ ์๊ฐ์ด์๋ค.
๊ฐ๋ฐ ๋ฟ ์๋๋ผ, ๋ฐฐํฌ, ์ธํ๋ผ ์ค์ , ๋ฌธ์ ํด๊ฒฐ๊น์ง ์ค์ค๋ก ํด๋ณด๋ฉฐ ๊ฐ๋ฐ์๋ผ๋ ์ง์ ์ ์ ์ฒด ์คํํธ๋ผ์ ์ฒดํํด๋ณด์๋ค.
'๐ฐ๐ท ํ๊ตญ์ด (Korean) > AWS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [3] ๋ฆฌ์ (Region) ์ค์ ํ๊ธฐ (0) | 2025.06.10 |
|---|---|
| [2] EC2(Elastic Compute Cloud)๋? (0) | 2025.06.10 |
| [1] ๋ฐฐํฌ (Deployment)๋? (0) | 2025.06.10 |
| AWS EC2์์ Gradle ๋น๋ ์คํจ ๋ฐ ์ธ์คํด์ค ์ฐ๊ฒฐ ์คํจ ๋ฌธ์ ํด๊ฒฐ ๊ณผ์ (2) | 2025.06.09 |
| ๋ฐฐํฌ ์ ๋ฐฑ์๋ ๊ฐ๋ฐ ํ๊ฒฝ ๊ตฌ์ถ ๋ฐ ์ ํ๋ฆฌ์ผ์ด์ ๋น๋ ์๋ํ ์ค๋น (1) | 2025.06.09 |