티스토리 뷰

728x90

1. 프로젝트 최상위에 Dockerfile 만들기

2. Dockerfile 작성

FROM openjdk:8
EXPOSE 8080
ADD target/springboot-docker.jar springboot-docker.jar
ENTRYPOINT ["java","-jar","/springboot-docker.jar"]

1️⃣ FROM : 컨테이너가 운영될 환경

2️⃣ EXPOSE : 외부에 노출 될 포트

3️⃣ ADD : 컨테이너 빌드 시 호스트의 파일을 컨테이너로 복사(local 환경에 있는 프로젝트 내부에 만들어진 jar파일을 컨테이너로 복사한다)

4️⃣ ENTRYPOINT : 실행 할 명령어(CMD와 비슷하나 CMD는 실행시 인자를 받을 수 있으나 ENTRYPOINT는 인자를 받을 수 없다)

 

✨ jar파일로 빌드 할 때 이름을 사전에 지정 할 수 있는데 pom.xml에서 설정 가능하다.

- build정보에 finalName 추가

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
        <finalName>springboot-docker</finalName>
    </build>

3. appilcation 빌드

4. Docker 이미지 생성

cd 프로젝트 경로
docker build -t springboot-docker.jar .

 

5. 생성 된 이미지 확인

docker image ls

6. 컨테이너 생성

- 포트 포워딩을 통해 9090포트를 사용하면 컨테이너의 8080포트로 포워딩 된다. (-p 9090:8080)

docker run -p 9090:8080 springboot-docker.jar

 

7. 확인

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함