编写Dockerfile构建镜像,使得每次以镜像运行容器时可以执行指定目录下的jar文件,并且更换该目录的jar后不用重新构建镜像也可以执行更新后的jar
时间: 2024-04-12 21:26:43 浏览: 83
容器技术-dockerfile构建镜像.pptx
您可以使用以下的Dockerfile来构建镜像并实现您的需求:
```dockerfile
FROM openjdk:11-jre-slim
WORKDIR /app
COPY ./app.jar /app/app.jar
CMD ["java", "-jar", "/app/app.jar"]
```
这个Dockerfile假设您的jar文件名为 `app.jar`,并且与Dockerfile位于同一目录下。在构建镜像时,它会将 `app.jar` 复制到容器的 `/app` 目录中。然后,通过 `CMD` 指令执行 `java -jar /app/app.jar` 命令来运行jar文件。
当您需要更换jar文件时,只需将新的 `app.jar` 文件放在与Dockerfile相同的目录下即可。然后,使用以下命令重新构建镜像:
```bash
docker build -t my-app .
```
然后,您可以运行容器并执行更新后的jar文件:
```bash
docker run -d my-app
```
这样,您就可以在不重新构建镜像的情况下更新并执行新的jar文件了。
阅读全文