IT/DevOps

[Docker] Docker File [2] (feat. Entrypoint, WorkDir)

알 수 없는 사용자 2023. 11. 2. 22:42
반응형

목차

    Dockerfile

    Docker Entrypoint & Workdir 😄

    • Entrypoint: Dockerfile로 만든 이미지를 컨테이너화 할 때 기본 명령어
    • Workdir: Dockerfile로 만든 이미지를 컨테이너화 할 때 기본 디렉토리

    Dockerfile로 jar 실행 😎

    jdk 11버전으로 만든 springBoot 애플리케이션을 실행하기 위해 Dockerfile로 openjdk 11버전 이미지를 다운받아서 Entrypoint, WORKDIR, COPY 등을 이용해서 실행하는 예제

    Dockerfile 🙄

    #가져올 이미지
    FROM openjdk:11-jdk-slim
    
    #컨테이너화 될 때 명령이 실행되는 디렉토리
    WORKDIR /app
    
    #좌측 경로의 jar파일을 WORKDIR의 application.jar이라는 파일명으로 복사
    COPY build/sample.jar ./application.jar
    
    #명령어 실행 시 필수값(반드시 실행되는 명령어이고 대체 불가)
    ENTRYPOINT ["java", "-jar", "-Dspring.profiles.active=dev", "application.jar"]
    
    #명령어 옵션(대체 가능)

    명령어 🤑

    #Dockerfile을 이미지화하는 명령어
    docker build -t {만들 이미지명} {Dockerfile이 있는 경로}
    #ex)
    docker build -t tomcat .
    #image를 컨테이너화(실행) 하는 명령어
    docker run {옵션} {image id 또는 repository명} 
    #ex) tomcat이라는 이미지를 터미널로 백그라운드로 3000번 포트로 포트포워딩 해서 실행
    docker run -dit -p 9898:3000 tomcat

    개인 스터디 기록을 메모하는 공간이라 틀린점이 있을 수 있습니다.

    틀린 점 있을 경우 댓글 부탁드립니다.

    reference: https://www.youtube.com/watch?v=hXP891DodOc

     

    [Docker] Docker File [3] (feat. Run)

    Dockerfile의 RUN을 이용해서 이미지를 만들 때 nginx를 설치해서 만들되 COPY를 이용해서 index.html을 내가 만든 html로 적용해보는 예제 Dockerfile 😄 FROM ubuntu #RUN을 이용해서 기존의 우분투에 apt update 후

    yaga.tistory.com

     

    반응형