有人可以向我解释为什么需要此行以及该行在做什么吗?

RUN sh -c 'touch /app.jar'

完整的docker文件看起来像这样,并且在每个templane中都可以找到它。
FROM frolvlad/alpine-oraclejdk8:slim
VOLUME /tmp
ADD docker-example-service-1.0.jar app.jar
RUN sh -c 'touch /app.jar'
EXPOSE 8080
ENV JAVA_OPTS=""
ENTRYPOINT ["java", "-Djava.security.egd=file:/dev/./urandom", "-Dapp.port=${app.port}", "-jar","/app.jar"]

最佳答案

touch命令会将时间戳更新为文件,目录。

这样,您就可以在创建和更新文件时跟踪它们。

运行sh -c'touch /app.jar'

当您调用docker build时,以上命令会将时间戳更新为app.jar。

有关触摸命令的完整详细信息,请参见下面的链接
https://www.computerhope.com/unix/utouch.htm

关于docker - “RUN sh -c '触摸/app.jar'”有什么作用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47755395/

10-16 23:45