docker部署jar

本文指导如何将jar包上传至Linux服务器,利用Dockerfile配置基础镜像,创建并构建Java应用镜像,最后演示容器启动与管理。

第一步: 将打包好的jar包上传到linux服务器中
第二步: 创建一个docker镜像文件 名称固定为: Dockerfile

touch Dockerfile
并在文件中写入配置

FROM java:8
EXPOSE 8088   //创建容器的端口
VOLUME /slm
ADD aaa.jar aaa.jar 
RUN sh -c 'touch /dtap.jar'
ENV JAVA_OPTS=""
ENTRYPOINT ["java","-jar","aaa.jar"]

说明:

FROM: 基础镜像必要,代表你的项目将构建在这个基础上面
EXPOSE: 允许指定端口转发 容器对外暴露的端口
VOLUME: 创建一个可以从本地主机或其他容器挂载的挂载点,一般用来存放数据库和需要保持的数据等。
ADD: 添加文件aaa到docker容器中(后面相当于别名,可以不写)
ENV: 可以用于为docker容器设置环境变量
ENTRYPOINT: 指定 Docker image 运行j该jar包(也就是 Docker container) 时要执行的命令。

接下来创建docker镜像 执行命令:

docker build -t demo . //注意加点 表示 Dockerfile 文件在当前目录下 demo表示镜像名称

通过该镜像创建容器 执行命令:

docker run -d --restart=always --name=bydemo -p 8080:8080 demo
//–restart=always 默认开启自动重启,-p 宿主机端口号:容器内部端口号,–name 表示该容器名称,demo 表示镜像名称

这个时候你的容器就可以运行了

### 使用 Docker 部署 Java JAR 文件 #### 创建 Dockerfile 为了使用 Docker部署 Java 应用程序 (JAR 文件),需要编写一个 `Dockerfile`。这个文件定义了构建镜像所需的指令集。 ```dockerfile FROM openjdk:8-jdk-alpine # 基础镜像,包含Java运行环境 VOLUME /tmp # 定义数据卷挂载点 ARG JAR_FILE # 构建参数,指定要打包的jar名称 COPY ${JAR_FILE} app.jar # 将本地jar复制到容器内并重命名为app.jar ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"] # 启动命令 ``` 上述配置选择了轻量级的基础镜像来减少最终镜像大小,并通过设置启动项确保应用程序能够正常初始化[^1]。 #### 准备工作 确保 JAR 文件位于与 `Dockerfile` 相同路径下,或者可以通过相对路径访问它。这一步骤对于后续构建过程至关重要。 #### 构建镜像 利用 Docker CLI 工具执行如下命令完成自定义镜像制作: ```bash docker build -t my-java-app --build-arg JAR_FILE=your-application-name.jar . ``` 这里 `-t` 参数用于给新创建出来的镜像打标签;而 `--build-arg` 则传递实际项目中的 jar 名字作为变量值传入 Dockerfile 中[^2]。 #### 运行容器实例 最后一步就是基于刚刚建立好的镜像启动一个新的容器: ```bash docker run -p 8080:8080 my-java-app ``` 此操作会映射主机端口容器内部服务监听地址,使得外部可以访问由该 Jar 提供的服务接口。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值