Saya memiliki proyek gradle sederhana yang ingin saya bangun di dalam wadah Docker
Saya memiliki build buruh pelabuhan multistage. Tahap pertama tinggal clone proyek dari github. Tahap kedua harus membangun proyek agar saya bisa menjalankannya di tahap akhir. Tapi gagal di dalam
FROM gradle:4.2.1-jdk8-alpine
WORKDIR /app
COPY --from=0 /app/myProject /app
RUN ./gradlew build --stacktrace
Perintah ./gradlew build --stacktrace
tidak dapat dijalankan dan gagal dengan kesalahan:
FAILURE: Build failed with an exception.
* What went wrong:
Could not update /app/.gradle/3.5-rc-2/file-changes/last-build.bin
Dan pelacakan tumpukan:
org.gradle.api.UncheckedIOException: Could not update /app/.gradle/3.5-rc-2/file-changes/last-build.bin
at org.gradle.api.internal.changedetection.state.FileTimeStampInspector.updateOnFinishBuild(FileTimeStampInspector.java:72)
at org.gradle.api.internal.changedetection.state.BuildScopeFileTimeStampInspector.stop(BuildScopeFileTimeStampInspector.java:38)
at org.gradle.internal.concurrent.CompositeStoppable.stop(CompositeStoppable.java:98)
.....
Caused by: java.io.FileNotFoundException: /app/.gradle/3.5-rc-2/file-changes/last-build.bin (Permission denied)
at java.io.FileOutputStream.open0(Native Method)
......
Mengapa pengguna buruh pelabuhan tidak memiliki izin untuk membuat file di direktori kerja dan bagaimana cara menambahkan izin ini? Sederhana RUN chmod 777 /app
tidak berfungsi dan memberi tahu saya: chmod: /app: Operation not permitted