dockerfile 빌드, 이미지 run 해보기
cpu bound 애플리케이션을 도커 이미지로 만든후에 gcp 인스턴스에 배포를 해보겠다.
도커는 개발환경을 이미지화 시키고 해당 이미지를 통해 개발이나 환경을 컨테이너로 구축시킨다. (이미지 -> 컨테이너)
이 과정의 순서는,
1. 도커파일을 만들어서 빌드하면 이미지가 되는데 해당 이미지를 push하면 dockerHub(저장소)에 업로드된다.
2. dockerHub(저장소)에 있는 이미지를 pull하면 이미지가 다운로드된다.
3. 다운로드된 이미지를 run 하면 컨테이너가 되면서 애플리케이션이 실행이 된다.
먼저, 도커파일을 만들어보자!
https://spring.io/guides/gs/spring-boot-docker/
Spring Boot with Docker
this guide is designed to get you productive as quickly as possible and using the latest Spring project releases and techniques as recommended by the Spring team
spring.io
도커파일의 쉘 스크립트 부분을 복사해서 cpu-bound-application에 파일을 만들어 넣어준다.
도커파일을 생성했으니 이제 빌드를 해 줄 차례이다.
애플리케이션을 빌드하기 전에 우리는 저장소가 필요하기 때문에 docker hub에 가입을 해주고
Repository를 생성한다!(public으로 만들면 됨.)
그럼 내가 설정한 사용자 이름으로 생성된 Repository를 확인할 수 있다.
사용자이름은 본인이 생성한 이름으로 나온다.
위에 올려놓은 가이드링크에 도커파일생성코드밑에 build와 run 코드가 있다.
docker build -t 사용자이름/gs-spring-boot-docker
터미널창에서 입력하면 빌드되면서 이미지가 된다.
Successfully built 라는 문구가 떴다면 정상적으로 빌드가 된것!
로컬에서 띄워본다면
docker run -p 8080:8080 사용자이름/gs-spring-boot-docker
8080:8080 대신 본인이 설정한 포트로 변경해주면된다.
본인 로컬에 들어가서 잘 뜨는지 확인해보기!
여기서 알아야 할 점은 기존에 직접실행시킨것과 다르게 도커 이미지 안에 있는 jar 파일을 실행시킨것이다.
이제 이미지를 push 해보겠다.
이글은 calss101의 현직 대기업 개발자 푸와 함께하는 진짜 백엔드 시스템 실무 강의를 참고하여 작성하였습니다.