Dockerfile部署jar包

1、打包好的jar文件上传到服务器
2、与jar包同目录下新建Dockerfile文件
vi Dockerfile

# 基于openjdk
FROM openjdk:8-jdk-alpine
# 设置工作目录,进入到容器中的初始目录,不存在会自动创建
ENV MYPATH /root
WORKDIR $MYPATH
# 复制jar到工作目录并改名为app.jar
# 相对于Dockerfile文件的路径
# ADD 命令必须提供两个参数,第一个参数为:宿主机中的目录,相对于Dockerfile文件
# 第二个参数为容器中的目录,相对于WORKDIR
ADD test.jar app.jar
# 添加容器卷,方便以后的处理,关联宿主机中的目录,不存在会自动创建
VOLUME $MYPATH
# 暴露端口
EXPOSE 8080 
# 运行jar包
CMD java -jar app.jar

FROM:指定基础镜像,必须为第一个命令
MAINTAINER: 维护者信息
LABEL:用于为镜像添加元数据
ADD:将本地文件添加到容器中,tar类型文件会自动解压(网络压缩资源不会被解压),可以访问网络资源,类似wget
COPY:功能类似ADD,但是是不会自动解压文件,也不能访问网络资源
WORKDIR:工作目录,类似于cd命令
RUN:构建镜像时执行的命令
CMD:构建容器后调用,也就是在容器启动时才进行调用。
ENTRYPOINT:配置容器,使其可执行化。配合CMD可省去"application",只使用参数。
ENV:设置环境变量
EXPOSE:指定于外界交互的端口
VOLUME:用于指定持久化目录
ARG:用于指定传递给构建运行时的变量
USER:指定运行容器时的用户名或 UID,后续的 RUN
也会使用指定用户。使用USER指定用户时,可以使用用户名、UID或GID,或是两者的组合。当服务不需要管理员权限时,可以通过该命令指定运行用户。并且可以在之前创建所需要的用户
ONBUILD:用于设置镜像触发器

3、编译Dockerfile文件生成Docker镜像

docker build -t app-demo .
-t app-demo:生成目标镜像名
如果需要删除旧的镜像
docker rmi 镜像名

4、运行app-demo镜像

docker run -d -p 8081:8081 app-demo
-d :在后台运行容器
-p 8081:8081 :主机端口号:容器端口号
app-demo :镜像名称

5、查看容器运行状态

docker ps 删除旧的容器,需要先停止容器,再删除。
docker stop 容器ID docker rm 容器ID

6、查看容器运行输出的日志信息

docker logs -f 容器ID -f :不间断持续输出

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值