인프런 커뮤니티 질문&답변

jd님의 프로필 이미지

작성한 질문수

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

Docker compose 관련 질문입니다

해결된 질문

작성

·

114

·

수정됨

0

안녕하세요 재성님! 좋은 강의 너무 잘 듣고 있습니다.

다름이 아니라 재성님 강의를 듣고 제 프로젝트에 spring boot mysql 을 함께 컴포즈 파일로 작성하고 있는데

localhost:8080으로 접속하

org.springframework.web.servlet.resource.NoResourceFoundException: No static resource .

이라는 에러 문구가 나옵니다.

현재 프로젝트에서는.html 파일을 전혀 사용하지 않아서 이 에러의 원인을 잘 못찾고 있습니다.

docker-compose 파일 첨부합니다.

감사합니다.

services:
  my-server:
    build: .
    ports:
      - 8080:8080
    # my-db의 컨테이너가 생성되고 healthy 하다고 판단 될 때, 해당 컨테이너를 생성한다.
    depends_on:
      my-db:
        condition: service_healthy
  my-db:
    image: mysql
    environment:
      MYSQL_ROOT_PASSWORD: 저희 비밀번호
      MYSQL_DATABASE: mydb # MySQL 최초 실행 시 mydb라는 데이터베이스를 생성해준다.
    volumes:
      - ./mysql_data:/var/lib/mysql
    ports:
      - 3306:3306
    healthcheck:
      test: [ "CMD", "mysqladmin", "ping" ] # MySQL이 healthy(정상 작동 하는지)한 지 판단할 수 있는 명령어
      interval: 5s # 5초 간격으로 체크
      retries: 10 # 10번까지 재시도

답변 2

0

JSCODE 박재성님의 프로필 이미지
JSCODE 박재성
지식공유자

안녕하세요 jd님! 해결하셨다니 다행이네요😊

 

코드가 바뀔 때마다 ./gradlew clean build를 매번 입력해서 새로 빌드를 해주셔야 합니다!

나중에 이 과정이 귀찮으시다면 CI/CD를 구축해 자동화를 시키는 것도 방법 중 하나입니다~!

 

이 외로 궁금하신 점 있으시면 질문 남겨주세요~~

0

jd님의 프로필 이미지
jd
질문자

해결한 것 같습니다! ./gradlew clean build 한 후 다시 docker compose up -d --build 하니 실행이 되네요ㅎㅎ 아마 ./gradlew clean build를 하지 않았던 문제였던 것 같습니다!

+ 그럼 매번 코드가 바뀔 때마다 ./graldew clean build 를 매번 직접 쳐주어야 하는지 궁금합니다!

jd님의 프로필 이미지

작성한 질문수

질문하기