【docker】制作纯净的springboot镜像



提示:以下是本篇文章正文内容,下面案例可供参考

一、制作jdk8镜像

下载jdk1.8

wget https://repo.huaweicloud.com/java/jdk/8u201-b09/jdk-8u201-linux-x64.tar.gz

解压压缩包

[root@localhost docker_jdk]# ls
Dockerfile  jdk1.8.0_201

Dockerfile

FROM centos:centos7
MAINTAINER sandishui
RUN mkdir /usr/local/jdk
WORKDIR /usr/local/jdk
ADD jdk1.8.0_201 /usr/local/jdk/jdk1.8.0_201

ENV JAVA_HOME /usr/local/jdk/jdk1.8.0_201
ENV JRE_HOME /usr/local/jdk/jdk1.8.0_201/jre
ENV PATH $JAVA_HOME/bin:$PATH

开始build

docker build -t jdk1.8 .

注意后面的点,点表示当前目录。
查看当前镜像

[root@localhost docker_jdk]# docker images
REPOSITORY              TAG                 IMAGE ID            CREATED             SIZE
image_jdk1.8            latest              04e6a53c5bbf        About an hour ago   601 MB
docker.io/centos        centos7             8652b9f0cb4c        2 months ago        204 MB
docker.io/hello-world   latest              bf756fb1ae65        13 months ago       13.3 kB

二、制作springBoot镜像

打包一个自己的springboot工程,保证本地能启动成功。
在这里插入图片描述
在这里插入图片描述
创建文件夹image_spring_boot,并且放入文件

[root@localhost image_spring_boot]# ls
Dockerfile  docker-hello-1.0-SNAPSHOT.jar

Dockerfile文件内容


FROM image_jdk1.8
MAINTAINER sandishui
RUN mkdir /usr/local/webapp
WORKDIR /usr/local/webapp   
ADD docker-hello-1.0-SNAPSHOT.jar /usr/local/webapp
            
ENTRYPOINT ["nohup","java","-jar","docker-hello-1.0-SNAPSHOT.jar","&"]

在当前文件夹中执行

docker build -t spring_boot .

注意最后的点。表示当前目录
查看当前镜像

[root@localhost image_spring_boot]# docker images
REPOSITORY              TAG                 IMAGE ID            CREATED             SIZE
spring_boot             latest              c68c6aa2f2d0        23 minutes ago      618 MB
image_jdk1.8            latest              04e6a53c5bbf        About an hour ago   601 MB
docker.io/centos        centos7             8652b9f0cb4c        2 months ago        204 MB
docker.io/hello-world   latest              bf756fb1ae65        13 months ago       13.3 kB

启动springboot

docker run -itd -p 8080:8080 c68c6aa2f2d0

三、dockerfile命令

  1. FROM 基于**镜像
  2. MAINTAINER 镜像的维护的姓名和邮箱地址
  3. RUN 镜像构建时需要运行的命令
  4. WORKDIR 容器创建后,默认在的目录
  5. EXPOSE 当前容器对外暴露端口
  6. ENV 环境变量
  7. ADD 将宿主机目录下的文件cp到镜像中,ADD命令会自动解压压缩包
  8. VOLUME 容器数据卷,用于保存和持久化
  9. CMD 指定容器启动过程中需要运行的命令,注意:多条CMD命令,只有最后一条生效,CMD会被docker run 之后的参数替换
  10. ENTRYPOINT 执行容器启动过程中需要运行的命令,此命令会追加到docker run的参数后面
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

叁滴水

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值