-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDockerfile
35 lines (29 loc) ยท 1.35 KB
/
Dockerfile
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
31
32
33
34
35
# ๋ฉํฐ ์คํ
์ด์ง ๋น๋ ๋ฐฉ๋ฒ ์ฌ์ฉ
# ์ฒซ๋ฒ์งธ ์คํ
์ด์ง
FROM openjdk:11 as stage1
WORKDIR /app
# workdir์ copy ํ๋ ๊ฒ
# /app/gradlew๋ก ํ์ผ๋ก ์์ฑ
COPY gradlew .
# app/gradle ํด๋๋ก ์์ฑ
COPY gradle gradle
# app/src
COPY src src
COPY build.gradle .
COPY settings.gradle .
# ์คํ๊ถํ ์๋ค๊ณ ์๋ฌ ๋จ๋ ๊ฒฝ์ฐ ๋ง์
RUN chmod 777 gradlew
RUN ./gradlew bootJar
# ๊ทธ๋ฅ ์ฒซ๋ฒ์งธ๊ฒ๋ง ํ๋ฉด ์ฉ๋์ด ๋๋ฌด ํฌ๋๊น ๋๋ฒ์งธ ์คํ
์ด์ง์์๋ jar ํ์ผ๋ง ๋ฐ๋ ๊ฒ
# ๋๋ฒ์งธ ์คํ
์ด์ง
FROM openjdk:11
WORKDIR /app
# stage1์ ์๋ jar๋ฅผ(*๋ฅผ ๋ถ์์ผ๋ก์จ ์ด๋ค jarํ์ผ์ด๋ผ๋ ๊ฒ) stage2์ app.jar๋ผ๋ ์ด๋ฆ์ผ๋ก copy
COPY --from=stage1 /app/build/libs/*.jar app.jar
#CMD ๋๋ ENTRYPOINT๋ฅผ ํตํด ์ปจํ
์ด๋๋ฅผ ์คํ (CMD๋ณด๋ค ENTRYPOINT๋ฅผ ๋ ๋ง์ด ์ฌ์ฉ)
ENTRYPOINT ["java", "-jar", "app.jar"]
# docker ์ปจํ
์ด๋ ๋ด์์ ๋ฐ์ ์ ์ฒด host๋ฅผ ์ง์นญํ๋ ๋๋ฉ์ธ : host.docker.internal
# ๋์ปค ์คํ.
# docker run -d -p 8080:8082 -e SPRING_DATASOURCE_URL=jdbc:mariadb://host.docker.internal:3306/board ordersystem:latest
# docker์ปจํ
์ด๋ ์คํ์์ ๋ณผ๋ฅจ์ ์ค์ ํ ๋์๋ -v ์ต์
์ ์ฌ์ฉ
# docker run -d -p 8081:8080 -e SPRING_DATASOURCE_URL=jdbc:mariadb://host.docker.internal:3306/board -v C:\Users\anflw\Desktop\BeyondCamp\tmp_logs:/app/logs spring_test:latest