实战:使用Dockerfile创建镜像
2023-02-18 16:38:05 时间
B站(乐哥聊编程)有完整配套视频,免费观看
常用指令
ARG
用途
申明创建镜像过程中使用的变量
用法
ARG tag=latest
FROM
用途
指定基础镜像,写在第一行
用法
FROM nginx:latest
LABEL
用途
给镜像元数据添加标签
用法
LABEL author=lglbc
EXPOSE
用途
申明需要需要的端口,但是不会做端口映射
用法
EXPOSE 80 443
ENV
用途
指定环境变量,在后续容器中也会存在
用法
ENV key=value key1=value1
ENTRYPOINT
用途
设置镜像的默认入口命令,容器启动时,首先会去执行这个命令
用法
ENTRYPOINT ["ls" "-l"]
WORKDIR
用途
配置工作目录
用法
WORKDIR /a
ONBUILD
用途
build镜像时,优先执行的指令,只会在子镜像中执行
用法
ONBUILD 任意dockerfile 指令
操作指令
RUN
用途
运行指定命令
用法
RUN ls -l
CMD
用途
CMD 指令用来指定启动容器时默认执行的命令 。与run不同之处在于这个只能出现一次,如果出现多次,则只有最后一条生效
用法
CMD java -jar app.jar
ADD
用途
添加内容到镜像
用法
ADD ./*.jar /app/
COPY
用途
复制内容到镜像,如果是本地目录推荐使用COPY
用法
COPY ./*.jar /app/
实战案例
FROM nginx:latest
ARG version=1
LABEL author="乐哥聊编程"
EXPOSE 80 443
ENV profile dev
#ENTRYPOINT echo 'nginx start success...'
WORKDIR /usr/share/nginx/html
ONBUILD RUN apt-get update
ONBUILD RUN apt install -y tree
RUN echo 'dockerfile build success ...'
RUN rm -rf /usr/share/nginx/html/*
ADD ./html/index.html /usr/share/nginx/html/
相关文章
- Java中ArrayList集合的基本使用
- Java中字符串对象的大闸蟹
- Windows系统朗读一段自定义的话
- SpringBoot中很好玩的一个banner启动控制台效果
- 线性结构和非线性结构简单介绍
- Java中StringBuilder类
- Java中Map集合常见使用
- 稀疏数组(Java代码基本实现)
- 大数据Kudu(七):Kudu分区策略
- 服务治理介绍,它是干什么的?
- File类简介说明加使用
- Java中的继承(extends)
- Java中 super与 this 关键字的作用
- Java中final关键字(Java)
- Java中多态到底怎么用和怎么实现(希望达到最简单的理解)
- IP地址简单介绍+查看本机IP地址-命令
- 迭代器和增强for的使用
- 使用Java中Collections工具类和Comparator比较器使用
- MIME 是什么以及对于文件类型
- 大数据Kudu(八):Kudu与Impala整合