javascript
docker build -t <镜像名称>:<版本> -f <Dockerfile路径> <构建上下文路径>
假设你有一个项目结构如下:
/myproject/
│
├── Dockerfile
└── app.jar

javascript
# 使用官方 OpenJDK 8 作为基础镜像
FROM openjdk:8-jdk-alpine
# 设置维护者信息(可选)
LABEL maintainer="[email protected]"
# 设置工作目录
WORKDIR /opt
# 将本地的 JAR 包复制到容器中;target目录是整个项目打包上传后解压得到
COPY target/*.jar /opt/app.jar
# 暴露应用运行时使用的端口(请根据实际情况调整)
EXPOSE 8080
# 定义环境变量(可选,用于指定 JVM 参数等)
ENV JAVA_OPTS="-Xms512m -Xmx2g -XX:+UseG1GC -Duser.timezone=GMT+8"
# 启动命令,运行 Java 应用
ENTRYPOINT ["sh", "-c", "java $JAVA_OPTS -jar /opt/app.jar --spring.profiles.active=prod"]
javascript
docker build -t myapp:1.0 -f ./Dockerfile .
这里的 .
表示当前目录作为构建上下文
运行docker
javascript
docker run --restart=always -d -p 8080:8080 --name=myapp myapp:1.0