使用Dockerfile 构建docker镜像

一、Dockerfile简介

Dockerfile是我们用来构建Docker镜像的一些命令组合,简单的来说,Dockerfile的作用就是可以让用户个性化定制Docker镜像。

二、Dockerfile常见命令

命令 作用
FROM image_name:tag声明镜像是在哪个镜像基础上生成的
MAINTAINER user_name     声明镜像作者
ENV key value设置环境变量(可写多条)
RUN command编译镜像时运行的脚本(可写多条)
CMD设置容器的启动命令
ENTRYPOINT设置容器的入口程序
ADD source_dir/file dest_dir/file将宿主机的文件复制到容器内,如果是一个压缩文件,将会在复制后自动解压
COPY source_dir/file dest_dir/file和ADD相似,但是如果有解压文件,COPY不能解压,ADD会解压
WORKDIR path_dir设置工作目录
ARG 设置编译镜像时加入的参数
EXPOSE设置暴露端口号
VOLUMN设置容器的挂载卷

RUN、CMD、ENTRYPOINT的区别?

RUN:用于指定 docker build 过程中要运行的命令,即是创建 Docker 镜像(image)的步骤。
CMD:设置容器的启动命令, Dockerfile 中只能有一条 CMD 命令,如果写了多条则最后一条生效,CMD不支持接收docker run的参数。
ENTRYPOINT:入口程序是容器启动时执行的程序, docker run 中最后的命令将作为参数传递给入口程序 ,ENTRYPOINY类似于 CMD 指令,但可以接收docker run的参数。

三、使用Dockerfile制作微服务镜像

1.先准备了一个简单的测试项目,用的springboot

server.port 设置成12541

启动项目,访问http://localhost:12541/docker/hello,查看项目是否正常启动

2.将项目打包,并上传到服务器,并在同目录下创建Dockerfile文件

3.编写Dockerfile文件

FROM openjdk:8-jdk-alpine
MAINTAINER axiba <axiba@qq.com>
EXPOSE 12541
ADD docker-demo.jar demo.jar
ENTRYPOINT exec java -jar /demo.jar

4.构建docker镜像

#docker build -t 镜像名:版本 .  
docker build -t demo .

构建成功过程的打印,看到Successfully说明成功

5.查看构建的镜像

docker images

6.运行容器

docker run -d -p12541:12541 --name=demo demo

7.测试是否成功

http://192.168.253.132:12541/docker/hello

测试结果

好了,Dockerfile的简单使用就到这里了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值