inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

비전공자도 이해할 수 있는 Docker 입문/실전

도커 컴포즈 질문있습니다.

74

zzzzz

작성한 질문수 192

0

안녕하세요.

현재 Docker Compose를 활용하여 여러 개의 컨테이너를 다루는 강의를 수강 중입니다. 섹션 6, "Docker Compose를 활용해 2개 이상의 컨테이너 관리하기"의 마지막 파트를 듣고 있습니다.

다름이 아니라, 강의를 따라 실습하던 중 궁금한 점이 생겨 이렇게 문의드립니다.
현재 Docker 환경에는 DB와 Redis가 구성되어 있는데요,

$ ./gradlew clean build

$ docker compose down

$ docker compose up --build -d

위와 같은 순서로 명령어를 실행하였습니다.
여기서 ./gradlew clean까지는 이해가 되지만, gradlew build를 실행하면 아직 DB가 연결되지 않은 상태에서 JAR 파일이 빌드되는 것이므로 오류가 발생해야 하는 게 아닌가 하는 의문이 들었습니다.

그래서 오히려 docker compose up --build -d 명령어로 컨테이너를 먼저 실행시킨 다음에, ./gradlew clean build를 실행하는 것이 더 맞는 순서가 아닐까 하는 생각이 드는데요.

혹시 이에 대해 설명해주실 수 있을까요?

감사합니다.

docker docker-compose docker-volume docker-image container ecr

답변 1

0

JSCODE 박재성

안녕하세요 zzzzz님! 궁금해하실 법한 부분을 잘 질문해주셨네요~!!

여기서 ./gradlew clean까지는 이해가 되지만, gradlew build를 실행하면 아직 DB가 연결되지 않은 상태에서 JAR 파일이 빌드되는 것이므로 오류가 발생해야 하는 게 아닌가 하는 의문이 들었습니다.

-> JAR 파일을 빌드할 때는 DB에 연결을 시킨 채로 빌드를 하지 않습니다! 빌드 작업은 Spring Boot 프로젝트를 '실행'시키는 작업이 아닌, Spring Boot 프로젝트를 '압축'하는 작업이라고 생각하시면 좋을 것 같습니다! 그런 뒤에 빌드 된 JAR 파일을 실행시킬 때, 그때서야 DB와 연결을 하게 됩니다!

 

여기서 또 궁금하신 점 있으시면 댓글 남겨주세요~~

EC2 터미널에서 docker pull

0

62

2

AWS ECR

0

57

2

FROM openjdk:17-jdk 현재 기준 dockerhub에 없습니다

1

98

2

Redis 볼륨 설정?

0

114

2

컨테이너의 IP

0

79

2

도커 이미지를 만들 때 application.yml

0

101

2

compose.yml 관리

0

86

2

ECR 리포지토리에 이미지가 3개가 보입니다.

0

76

2

액세스 키 등록하는 시점 관련 질문이 있습니다.

0

82

1

depends_on에 따른 컨테이너 실행 순서

0

75

2

실제 웹 서비스 배포 시 질문

0

80

2

도커 volume 질문

0

66

3

HTTPS로도 받고 싶으면 docker compose에 443도 쓰면 될까요?

0

71

2

sql 볼륨 폴더 지우면 데이터베이스 데이터 날라가는거 아닌가요?

0

71

2

39강 도커파일 빌드 경로 질문이 있습니다.

0

67

2

도커파일 copy

0

69

2

실무에서 docker compose up --build를 할 때

0

183

2

mysql_data 폴더 내부에 다른 파일이 있는데도 잘 되는 경우

0

83

2

도커 허브에서 postgres 버전 확인하는 법

0

127

2

보충 자료와도 관련된 추가 내용

1

81

1

현업에서 MySQL은 RDS와 도커 볼륨 중 어떤 걸 사용하나요?

0

108

2

노션 자료에 안 보이는 이미지가 있습니다

0

99

1

도커 허브에서의 latest가 가장 최신인 게 맞나요?

0

118

2

docker image ls 실행 시 나오는 내용이 다릅니다

0

86

2