Asked thg 11 3, 2022 9:01 SA• 202 0 1
  • 202 0 1
0

Gradle and ADD/COPY jar file

Share
  • 202 0 1

Bằng các sử dụng câu lệnh ./gradlew bootBuildImage để build "java spring boot project" sang "Docker image" Có cách nào mình có thể ném file "elastic-apm-agent.jar" vào docker image như "Docker file ADD/COPY" không ? Chỉ cần image của project chứa thêm file mà mình mong muốn, Thks!

1 ANSWERS


Answered thg 11 4, 2022 1:48 SA
0

ý bạn là sao?

Tức là bạn build bằng gradlew trước rồi bây giờ muốn COPY jar file vào container à?

Vậy thì bạn dùng COPY cũng được mà?

COPY elastic-apm-agent.jar /some/path/in/container
Share
Avatar ken withs @kenwiths999
•
thg 11 4, 2022 3:02 SA

Miễn là file jar này nằm trong image là được (chứ không phải container) Theo cú pháp của bạn thì COPY elastic-apm-agent.jar /some/path/in/container nằm ở đâu để thực hiện ?

-1
| Reply
Share
Avatar Mai Trung Đức @maitrungduc1410
•
thg 11 4, 2022 3:46 SA

@kenwiths999

COPY elastic-apm-agent.jar /some/path/in/container

Ở trên có 2 phần:

  • COPY file elastic-apm-agent.jar từ môi trường gốc (máy gốc, máy bên ngoài) của bạn, tại folder cùng nơi bạn đang để Dockerfile
  • đưa vào đường dẫn /some/path/in/container --- > ta được file jar tại địa chỉ /some/path/in/container/elastic-apm-agent.jar.

Vậy thì khi bạn chạy container thì bạn chạy file jar tại địa chỉ kia:

CMD ["java", "-jar", "/some/path/in/container/elastic-apm-agent.jar"]
0
| Reply
Share
Avatar ken withs @kenwiths999
•
thg 11 4, 2022 4:21 SA

@maitrungduc1410 cảm ơn bạn, nhưng cú pháp ./gradlew bootBuildImage sử dụng gradle plugin (gradle package) và nó không liên quan đến Dockerfile. Và mình muốn khi sử dụng câu lệnh này có thể copy file apm.jar vào image như Dockerfile ý, chứ không phải sử dụng Dockerfile. Bạn có thể test qua câu lệnh này để hiểu thêm về nó không ?

  • cd đến gradle project có file gradlew.sh
  • sử dụng câu lệnh để build image ./gradlew bootBuildImage --imageName="myproject/gradle:1.0"
0
| Reply
Share
Avatar Mai Trung Đức @maitrungduc1410
•
thg 11 4, 2022 5:07 SA

@kenwiths999 à mình hiểu ý bạn rồi.

Vậy thì phải search xem gradlew có support ko bạn ạ,

0
| Reply
Share
Viblo
Let's register a Viblo Account to get more interesting posts.