<span style="color:rgb(230,3,130);font-size: 20px">docker image</span>java
<br />linux
<br />docker
<br />app
#
在命令所在行的上方或下方添加注释# 这里添加注释(#空格,跟上具体的注释) 添加命令(命令忽略大小写,为了区分,推荐命令使用大写)
<br />学习
用于指定base image父镜像(在哪个镜像的基础上,建立新的镜像)ui
一个Dockerfile文件中必需要有一个FROM指令spa
通常为Dockerfile文件中的第一个指定操作系统
经常使用格式:code
FROM <父镜像名>[:<tag版本>]
例如:blog
# 指定父镜像为jdk8,操做系统为alpine FROM openjdk:8-alpine
<br />
经常使用格式:
LABEL <key>=<value> <key>=<value> <key>=<value> ...
例如:
# 添加image镜像的做者信息以及对当前镜像的功能描述 # a. maintainer和description为固定形式 # b. LABEL与maintainer之间要有空格 LABEL maintainer="KeYou <keyou100@qq.com>" LABEL description="This is multi-stage build example."
<br />
经常使用格式:
COPY <源文件或者目录> <容器中的目录>
例如:
# 复制当前目录下的Test.java文件到容器/usr/src/myapp/目录下 # a. 一个路径加/和不加/, 是有区别的 # 加/, 为目录 # 不加/, 为文件 # b. 若是容器中所指定的目录不存在, 会自动建立 COPY Test.java /usr/src/myapp/
<br />
经常使用格式:
WORKDIR /path/to/workdir
例如:
# 进入容器/usr/src/myapp/目录中 # myapp目录不存在,则会自动建立 WORKDIR /usr/src/myapp/
<br />
经常使用格式:
RUN <命令>
例如:
# 执行命令 # 因为使用了openjdk 8父镜像,全部有java的安装环境 # 使用javac 编译java源文件 RUN javac Test.java
<br />
<br />