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
相关推荐
一叶龙洲几秒前
Java中使用模板引擎(FreeMarker / Velocity) + Word XML导出复杂Word
xml·java·word
FJW0208146 分钟前
Kubernetes自动化巡检脚本(Python)
容器·kubernetes·自动化
格林威7 分钟前
AI视觉项目部署:Docker 部署视觉服务可行性分析
linux·运维·人工智能·数码相机·docker·容器·工业相机
Halo_tjn7 分钟前
Java 接口的定义重构学生管理系统
java·开发语言·算法
江湖有缘12 分钟前
极简部署Radicale:Docker快速搭建自托管日历 / 联系人服务
运维·docker·容器
Albert Edison14 分钟前
【RabbitMQ】快速入门
java·分布式·rabbitmq
ch.ju15 分钟前
Java程序设计(第3版)第二章——类型转换(1)
java
XiYang-DING17 分钟前
【Java】哈希
java·哈希算法·散列表
ai旅人20 分钟前
Guava RateLimiter深度解析:非阻塞令牌桶限流原理与跑批实战
java·限流·guava
Seven9722 分钟前
【从0到1构建一个ClaudeAgent】规划与协调-技能
java