docker-Dockerfile文件详解

docker-Dockerfile文件详解

大家好,又见面了,我是你们的朋友全栈君。

Dockerfile文件详解

  • FROM //指定基于哪个基础镜像

格式 FROM <image> 或 FROM <image>:<tag>
示例:

FROM centos
FROM centos:latest
  • MAINTAINER //指定作者信息

格式 MAINTAINER <name>
示例:

MAINTAINER apeng apeng@apenglinux.com
  • RUN //镜像操作指令

格式 RUN <command> 或 RUN [“executable”,”param1″,”param2″]
示例:

RUN yum install httpd
RUN ['/bin/bash',"-c","echo hello"]
  • CMD
    CMD [“executable”,”param1″,”param2″]
    CMD command param1 apram2
    CMD [“param1″,”param2”]
    示例:
CMD ["/bin/bash","/usr/local/nginx/sbin/nginx","-c","/usr/local/nginx/conf/nginx.conf"]
  • EXPOSE
    格式为 EXPOSE <port>[<port>…]
    示例:

    //指定要映射出去的端口
    // -P 自动分配端口
    // -p 指定具体的端口
    EXPOSE 22 80 9000
  • ENV

格式 ENV <key> <value>
示例:

ENV PATH /usr/local/mysql/bin:$PATH
  • ADD
    格式 add <src><dest>

    ADD <conf/vhosts></usr/local/nginx/conf>
  • COPY

格式同ADD
不支持url

  • ENTRYPOINT

容器启动时要执行的命令,它和CMD很像,也是有一条生效,如果写多个只有一条有效。和CMD不同是:
CMD是可以被docker run指令覆盖的,而ENTRYPOINT不能覆盖
如,容器名为 apeng
我们在Dockerfile中指定如下CMD
CMD [“/bin/echo”,”test”]
启动容器的命令是docker run -it apeng /bin/bash 什么都不输出
ENTRYPOINT不会覆盖,而且会比CMD或者docker run指定的命令要靠前执行
ENTRYPOINT [“echo”,”test”]
docker run -it apeng 123
则会输出 test 123,这相当于要执行命令echo test 123

  • VOLUME

格式 VOLUME [“/data”]
创建一个可以从本机或其他容器挂载的挂载点

  • USER

格式 USER daemon
指定运行容器的用户

  • WORKDIR

格式 WORKDIR /path/to/workdir
为后续的RUN、CMD、ENTRYPOINT指定工作目录

转载于:https://blog.51cto.com/13480443/2097447

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/107584.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • docker(4)解决pull镜像速度缓慢「建议收藏」

    docker(4)解决pull镜像速度缓慢「建议收藏」前言上一篇讲到pull镜像,但是pull镜像的时候下拉的速度实在感人,有什么解决办法吗?我们只需将docker镜像源修改为国内的将docker镜像源修改为国内的:在/etc/docker/d

    2022年7月28日
    17
  • docker高级教程_docker到底怎么用

    docker高级教程_docker到底怎么用一、基于Linux安装Docker1、下载关于Docker的依赖环境yum-yinstallyum-utilsdevice-mapper-persistent-datalvm22、设置镜像下载Docker的镜像源yum-config-manager–add-repohttp://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo3、安装Dockeryummakecachefastyum-yinstall

    2022年10月15日
    0
  • Docker Nginx SSL证书认证启动教程[通俗易懂]

    前言:linux环境下,ssl证书认证https,docker快速部署nginx1下载nginxdocker镜像准备:服务器首先要安装docker,docker安装教程网上很多域名、ssl证书dockerpullnginx:latest2新建文件夹mkdir-p/home/docker-nginx/conf.d/mkdir-p/home/docker-nginx/logmkdir-p/home/docker-nginx/3下载nginx.

    2022年4月16日
    77
  • Docker安装配置教程[通俗易懂]

    Docker安装配置教程[通俗易懂]之前docker很久就写了笔记了。后面因为家里有事,耽搁了一年。现在把这部分笔记重新上传一下。大家看看。Docker要求:lunix内核,要求3.8以上centos7Docker是一个进程,一启动就两个进程,一个服务,一个守护进程。占用资源就非常少,启动速度非常快,1s。一台机器上vm,3到10个实例。docker100到10000。1.核心概念:1)镜像images,事先做好一…

    2022年10月10日
    0
  • 用docker部署jar包_war包和jar包部署区别

    用docker部署jar包_war包和jar包部署区别对于springboot项目运行,直接是java-jar的方式运行,如果想要放到docker中运行,有三种方式:方式一:1.上传jar到服务器的指定目录2.在该目录下创建Dockerfile文件viDockerfile3.然后将下面的内容复制到Dockerfile文件中FROMjava:8MAINTAINERbin…

    2022年10月19日
    1
  • docker dockerfile详解_进入docker容器命令

    docker dockerfile详解_进入docker容器命令前言Dockerfile是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。Dockerfile简介Dockerfile是用来构建Docker镜像的构建文件,是由一系列

    2022年7月30日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号