一、什么是Dockerfile

dockerfile是由一系列参数和命令组成的脚本,这些命令和参数应用于基础镜像并最终创建一个新的镜像。开发人员构建好一个一致的开发环境,测试人员和运维人员就可以直接使用了。

二、Dockerfile参数

  • FROM:指定基础镜像,意思就是基于哪个镜像。
  • MAINTTAINER:维护者信息,可不填。
  • RUN:要执行什么动作,在命令前加上RUN即可。
  • ADD:copy文件,会自动解压。
  • WORKDIR:设置当前工作目录。
  • VOLUME:设置挂载主机目录。
  • EXPOSE:容器需要暴露的端口号。
  • CMD:指定容器启动后要干的事。
  • ENV:指定一个环境变量。

三、实现一个最简单的Dockerfile

随便找个目录,新建个文件,名称必须为Dockerfile
然后输入

FROM centos
CMD echo “hello docker!!!”

保存退出。构建一个镜像,后面有个点,意思是当前目录下找Dockerfile文件。前面是镜像名称。

pengweiwei@weiweideMacBook-Pro Documents % docker build -t hello-docker .
Sending build context to Docker daemon  87.53MB
Step 1/2 : FROM centos
 ---> 0f3e07c0138f
Step 2/2 : CMD echo "hello docker!!"
 ---> Running in 37e104a59d19
Removing intermediate container 37e104a59d19
 ---> 238d2607e624
Successfully built 238d2607e624
Successfully tagged hello-docker:latest

查看所有镜像。

pengweiwei@weiweideMacBook-Pro Documents % docker images
REPOSITORY                TAG                 IMAGE ID            CREATED             SIZE
hello-docker              latest              238d2607e624        15 seconds ago      220MB
centos                    latest              0f3e07c0138f        2 months ago        220MB
registry                  latest              f32a97de94e1        9 months ago        25.8MB
192.168.1.16:5000/hello   1.0                 fce289e99eb9        11 months ago       1.84kB

可以看到镜像已经构建完成,运行一下看看效果。

pengweiwei@weiweideMacBook-Pro Documents % docker run hello-docker 
hello docker!!

到这里,一个最简单的Dockerfile构建镜像运行就完成了。下一篇,介绍一下怎么用dockerfile构建一个springboot项目的镜像。下一篇:利用dockerfile构建一个springboot项目镜像

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐