Docker制作镜像

javascript 复制代码
docker build -t <镜像名称>:<版本> -f <Dockerfile路径> <构建上下文路径>

假设你有一个项目结构如下:

/myproject/

├── Dockerfile

└── app.jar

javascript 复制代码
# 使用官方 OpenJDK 8 作为基础镜像
FROM openjdk:8-jdk-alpine

# 设置维护者信息(可选)
LABEL maintainer="your-email@example.com"

# 设置工作目录
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
相关推荐
板板正38 分钟前
SpringAI——向量存储(vector store)
java·spring boot·ai
野生技术架构师44 分钟前
Spring Boot 定时任务与 xxl-job 灵活切换方案
java·spring boot·后端
NPE~1 小时前
[docker/大数据]Spark快速入门
大数据·分布式·docker·spark·教程
苹果醋32 小时前
Java并发编程-Java内存模型(JMM)
java·运维·spring boot·mysql·nginx
你怎么知道我是队长2 小时前
C语言---编译的最小单位---令牌(Token)
java·c语言·前端
Elieal2 小时前
Java 链表完全指南:从基础到力扣简单题实战
java·leetcode·链表
寒士obj3 小时前
SpringBoot中的条件注解
java·spring boot·后端
dexianshen3 小时前
k8s中的微服务
微服务·容器·kubernetes
pengzhuofan3 小时前
Java设计模式-外观模式
java·设计模式·外观模式
Emrys_3 小时前
AQS 深入解析
java