关于这方面的最佳实践是什么?例如,假设我正在运行一个java或python应用程序。所以我会运行一个基于java或python的容器,但是我的应用程序应该放在哪里呢?它们应该位于基本映像内的文件夹中,还是应位于主机上已装载的文件夹中?
发布于 2019-09-11 20:31:56
对于开发、阶段、生产或测试环境,您应该将jar复制到容器中。有时开发人员可以挂载二进制文件,但这是后盾。以下是标准Dockerfile示例,"init“是应用程序状态的脚本:
FROM openjdk:8-jdk-slim
ENV MYSQL_URL="mysql-master:3306"
EXPOSE 8080
COPY build/libs/app-*SNAPSHOT.jar /opt/app.jar
COPY init /opt/
WORKDIR /opt
VOLUME /logs
ENTRYPOINT ["/opt/init"]其中一个优点是,您可以测试、部署到阶段、部署到生产环境中,并且开发人员可以将其用于本地运行以重现问题。
您还可以将版本控制包含到容器标记中。你会从docker image ls上知道哪个版本的应用程序需要什么环境。
https://stackoverflow.com/questions/57888535
复制相似问题