我的第一个dockerfile

戚薇 Docker 发布时间:2023-05-05 11:37:40 阅读数:12085 1
下文笔者讲述编写第一个dockerfile的简介说明,如下所示

Dockerfile简介

dockerfile用于创建镜像文件
    用docker build 执行
      获得一个自定义的镜像
    用run 命令运行镜像
例:
FROM scratch //定义基础镜像为scratch
 
CMD ["/bin/bash"] //运行bin/bash

dockerfile文件参数说明

FROM 基础镜像,指定创建镜像是基于哪一个镜像
MAINTAINER 镜像维护人的信息,邮箱和名称
RUN 容器构建时需要执行的命令
EXPOSE 暴露出镜像的实例服务端口号
WORDDIR 指定创建容器后,终端默认登录进来后的工作目录
        当没有指定默认工作目录是根目录
ENV 用来在构建镜像过程中设置环境变量
ADD 相对于 COPY ,不但复制而且并进行加压
      将宿主机目录下文件 copy 进镜像并自动处理 url 和解压 tar 压缩包
COPY 直接复制,类似 ADD copy文件和目录到镜像中
      将从构建上下文目录中<源路径>的文件/目录
	     复制到新的一层的镜像内的<目标路径>位置
VOLUME 容器数据卷,用于数据保存和持久化
CMD 指定一个容器启动时要运行的命令
       但是 ENTRYPOINT 的区别是在 dockerfile 
	      可以有多个 CMD 命令,CMD 会被 docker run 之后的参数替换
ENTRYPOINT 指定一个容器启动时要运行的命令,
ONBUILD 当构建一个被继承的 dockerfile 时运行命令
      父镜像在被子继承后父镜像的 onbuild 被触发
例:
创建一个 Ubuntu
   登录后默认路径
   vim 编辑器
   查看网络配置ifconfig支持
FROM centos
MAINTAINER zidea

ENV mpath=/tmp
WORKDIR ${mpath}

RUN yum -y install vim
RUN yum -y install net-tools

EXPOSE 80
CMD [ "/bin/bash" ]
docker build -f Dockerfile -t mycentos:1.0 .
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/docker/202305/6356.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者