도커를 공부하면서 내가 만든 어플리케이션을 이미지로 만들어보고 싶어졌습니다.
도커 이미지를 만드는 방법은 두가지가 있는데 하나는 container를 통해서 커밋하는 방법과 docker file을 통해 이미지를 만드는 방법이 있습니다.
오늘은 docker file을 통해 도커 이미지를 만들어 보겠습니다.
* 스프링부트 maven 프로젝트가 있을 가정 하에 실시 했습니다.
1. maven build 하기

- maven build를 통해 jar 생성
2. jar 생성된 경로로 가서 Dockerfile 생성

3. Dockerfile 작성
FROM openjdk:17-jdk-alpine
ARG jar_file=demo-0.0.1-SNAPSHOT.jar
COPY ${jar_file} demo.jar
ENTRYPOINT ["java","-jar","/demo.jar"]
- From : docker image 기본틀
- Arg : 내부변수로 jar 파일의 위치 및 파일을 명기
- copy : 파일복사
- ENTRYPOINT : Java를 실행하는 parameter를 정의
4. DockerBuild 하기
docker build -t [이미지이름] -f [도커파일이 있는 절대 경로] .
- docker build -t springbootimage -f D:\Dev\sts-workspace\dockerImage\demo\target/Dockerfile.txt .
- 처음에는 확장자를 빼고 적었으나 해당 파일을 못찾는 오류가 있어 확장자 까지 적어줘야함
5. 컨테이너 생성
docker run -d -p [포트포워딩] --name [생성하고 싶은 컨테이너이름] [이미지이름]
- docker run -d -p 8089:8080 --name test1 springbootimage
6. 확인

참조 :
https://ayoteralab.tistory.com/entry/DevOps-3-SpringBoot-docker-image-build-run
'docker' 카테고리의 다른 글
| [docker] 6.불륨 마운트 (0) | 2023.05.05 |
|---|---|
| [docker] 5.컨테이너 파일시스템 연결 (0) | 2023.05.01 |
| [docker] 4.도커호스트와 컨테이너 포트포워딩 (2) | 2023.05.01 |
| [docker] 3.컨테이너 생성,삭제,시작,중지 (3) | 2023.05.01 |
| [docker] 2.이미지 pull - 아파치 설치 (0) | 2023.05.01 |