회사에서 개발중인 프로그램을 테스트하기 위해 jar 파일을 도커 이미지로 만들어

온프레미스 환경에 docker-compse 파일을 이용하여 띄우는데 필요한 내용을 정리했다

 

1) Dockerfile

도커파일은 도커 이미지를 만들기 위해 작성하는 파일을 뜻한다
docker build 명령어를 통해 도커파일에서 작성한 내용을 기반으로 이미지 생성 가능

 

2) 문법

FROM : 어떤 base 이미지를 사용하는지 쓰는곳 ex)
COPY : 호스트에서 이미지에 파일 추가
ADD : 호스트에서 이미지에 파일 추가 (url, 압축파일 까지 커버)
ENTRYPOINT : 빌드한 이미지를 컨테이너로 생성할때 단 한번 실행
CMD : 빌드한 이미지 생성 및 시작할때 실행 (Docker run, start)
WORKDIR : run 명령어가 실행되는 위치를 지정, 컨테이너의 위치 지정

 

3) 준비해야할 파일 및 폴더

- ext 폴더
- lib 폴더
- test-1.0.jar 파일
- Dockerfile 파일
- docker-compose.yml

 

4) Dockerfile 내용

FROM openjdk:17
ADD test-1.0.jar /apps/backend/test-1.0.jar
ADD lib /apps/ backend /lib
ADD ext /apps/ backend /ext
WORKDIR /apps/ backend
CMD ["java","-jar","test-1.0.jar"]

 

5) 도커 컴포즈 내용

services:
    test:
        image: test:1.0
        container_name: test
        ports:
            - 8080:8080
        environment:
            APPKEY_FILE: ext/app.key
            DB_ENCRYPT_PASSWD: 1234
            TZ: Asia/Seoul
        restart: always

 

6) 이미지 생성 방법

docker build -t [이미지이름]:[태그] [Dockerfile 경로]
ex) docker build -t test:1.0 .

 

7) 도커 run 으로 실행 방법

docker run -p 8080:8080 -d test-1.0

 

8) 도커 컴포즈로 실행 방법

docker-compose up -d

'DevOps' 카테고리의 다른 글

[DevOps] Curl (Client URL)  (0) 2024.07.30
[DevOps] 리눅스 크론탭(Linux Crontab) 사용법  (0) 2024.03.06
[DevOps] Elastic Alert  (0) 2023.12.15
[DevOps] Grafana Alert  (0) 2023.12.05
[DevOps] 도커 네트워크 종류  (0) 2023.07.19