Docker自定义镜像

目录

回顾

镜像含义

DockerFile语法

自定义java项目镜像

创建一个空目录,在这个空目录中创建一个文件,命名为 DockerFile,将 java 项目打包成 jar 包,放到这个目录中

​编辑

编写DockerFile文件信息

 使用 docker build 构建为一个镜像

查看构建的镜像

docker run运行镜像


回顾

镜像含义

是一个轻量级、可执行的独立软件包,它包含运行某个软件所需的所有内容,我们把应用程序和配置依赖打包好形成一个可交付的运行环境(包括代码、运行时需要的库、环境变量和配置文件等),之后个打包好的运行环境就是image镜像文件。

DockerFile语法

DockerFile就是一个纯文本,里面记录了一系列的构建指令,如选择基础镜像、拷贝文件、运行脚本等等,Run,Copy,Add指令都会生成一个Layer,而Docker顺序执行这个文件里的所有步骤,最后就会创建出一个新的镜像出来。

 以下命令参考官方文档

指令说明
FROM指定基础镜像
ENV设置环境变量,可在后面指令使用
COPY拷贝本地文件到镜像的指定目录
RUN指令linux的shell命令,一般是安装过程的命令
EXPOSE指定容器运行时监听的端口,是给镜像使用者看的
ENTRYPOINT镜像中应用的启动命令,容器运行时调用

自定义java项目镜像

创建一个空目录,在这个空目录中创建一个文件,命名为 DockerFile,将 java 项目打包成 jar 包,放到这个目录中

编写DockerFile文件信息

基本信息如下:

  1. 基于XXX作为基础镜像
  2. 将 app.jar 拷贝到镜像中
  3. 暴露端口
  4. 编写入口 ENTRYPOINT
#基础镜像
FROM java:8-alpine

#设置时区
ENV TZ=Asi/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

#拷贝jar包
COPY docker-demo.jar /app.jar

#暴露端口
EXPOSE 8090

#入口
ENTRYPOINT ["java","-jar","/app.jar"]

 使用 docker build 构建为一个镜像

参数说明:

  • -t 表示设置镜像名和版本号(自定义)
  • . 表示 Dockerfile 所在目录,因为刚刚我是将 Dockerfile 放在了当前文件目录下,所以就用 . 来表示当前目录

查看构建的镜像

docker run运行镜像

根据服务器 IP 和自己配置的镜像映射端口号以及项目地址就可以访问

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值