ex08 에서 db폴더, server 폴더 생성
(server 폴더는 메타코딩 님 github에서 다운로드 받았다)
스프링 서버의 Dockerfile 작성
DB 서버의 Dockerfile 작성
init.sql
을 이 디렉토리에 덮어씌우면, 컨테이너가 시작될 때, 해당 SQL 파일이 시작된다.docker-compose.yml
작성
서비스명은 각각 db
,server
로 설정하였다.
서비스명은 이름을 정의하는 것이므로, 어떻게 작성하는지는 상관이 없지만,
하위항목은 지정이 되어있어서, 마음대로 수정이 불가능하다.
하위 항목에서 depend_on
은 의존성을 기입한다는 의미이다. server 서비스를 먼저 올릴 경우, db 서비스를 불러올 수 없어서, db 서비스를 먼저 올리고 server 서비스를 올리도록 하였다.
networks는 동일 네트워크로 묶었다.
db서버의 init.sql
작성
설정을 완료하였다면 docker-compose를 build하면서 실행한다
docker-compose up -d --build
db, server 서비스가 잘 작동되었는지 확인한다.
server,db 서비스가 연동이 잘 되는 것을 확인하였다.
docker desktop에도 실행이 된 것을 확인할 수 있으며, ex08로 하나로 묶여있는 것을 확인하였다.
db, server
image가 설치되었음을 확인
윈도우 호스팅 폴더 ./docker-test-db/store
를 볼륨 위치로 잡았으므로, docker volumes에는 volume이 없다