jar파일을 실행하는 도커이미지 만들기
1. jar 생성
1. 스프링 부트에서 간단한 프로그램을 생성한 후 gradle의 bootjar를 이용하여 jar를 build한다
2. build가 완료되면 lib폴더 하위에 jar파일이 생성된다
3. 테스트를 위해 터미널에서 해당 jar파일이 위치한 곳으로 이동하여 실행해본다
2. docker image 생성
1. jar 파일 이동
- 위에서 생성한 jar파일을 도커가 설치되어 있는 곳으로 이동 시킨다
(필자는 가상머신(CentOS7)을 이용하여 Docker 실습을 진행하므로 CentOS7으로 jar을 이동시켰다)
2. 기본 이미지 다운
- 도커이미지 생성시 사용될 기본이미지를 다운로드한다 jar를 실행하기 위해 jdk가 설치된 이미지를 다운로드 한다
1. jdk가 설치된 docker image 찾기
# docker search jdk
2. 위에서 찾은 jdk가 설치된 docker 이미지를 다운로드 한다
# docker pull rtfpessoa/ubuntu-jdk8
3. 확인
3. Docker image 빌드
1. Dockerfile 생성
- 반드시 "Dockerfile" 이라는 이름으로 docker file 생성
# vi ./Dockerfile
2. Dockerfile 내용작성
FROM : 기본 이미지를 지정한다
ADD : 현재 위치의 test.jar 파일을 app.jar라는 이름으로 이미지에 적재한다
ENTRYPOINT : 이미지가 컨테이너화 되며 실행될 명령을 입력한다
3. 이미지 빌드
- Dockerfile이 생성된 곳에서 아래 명령어 입력
# docker build --tag test:0.1 ./
--tag : 생성될 이미지의 태그
./ : 현재 명령어가 실행되는 곳의 기준으로 Dockerfile의 위치
2. 생성한 이미지 실행
1. image 확인
2. 이미지 실행
# docker run -p 8080:8080 test:0.1
3. 접속 확인
- docker 호스트의 "IP:컨테이너 port"
(spring boot의 메인페이지를 매핑하지 않아서 발생하는 에러이므로 무시)
'Infra > Docker' 카테고리의 다른 글
Docker - Docker Hub 사용법(이미지 업로드, 다운로드) (5) | 2019.01.25 |
---|---|
Docker - Docker 이미지 만들기(Container를 image로) (1) | 2019.01.25 |
Docker - Docker 컨테이너의 서비스와 연결하기 위한 포트 바인딩 (0) | 2018.12.26 |
Docker - Docker 기본 사용법 (CentOS systemctl permit 오류) (2) | 2018.12.23 |
Docker - CentOS7 Docker 설치, AWS EC2에서 docker 설치 (0) | 2018.12.23 |