Dockerfile 配置
// FROM 指定基础镜像
FROM nginx
​
// RUN 执行命令。每一条 RUN 都会生成一层,一个需求尽量使用&&,这样就减少了 RUN ,即减少了分层
RUN echo '<h1>Hello, Docker!</h1>' > /usr/share/nginx/html/index.html
RUN yum update && yum install -y vim python-dev
​
// COPY: 源路径下的 package.json 复制到新一层的镜像路径/usr/src/app
COPY package.json /usr/src/app/
​
// WORKDIR 指定工作目录。指定下层工作的目录为容器内的/data,尽量使用绝对目录
WORKDIR /data
​
// ADD 添加,ADD能自动解压文件。以下例子最终 hello 在/data/test 下
WORKDIR /data
ADD hello test/ 
​
// COPY 拷贝  与ADD类似,只是不能解压缩文件。
WORKDIR /DATA
COPY hello test/
​
// CMD 执行命令
CMD ["python", "app.py"]
​
// ENV 设置环境变量 定义 NAME=Happy Feet,那么之后就可以使用 $NAME 来执行了 
ENV VERSION=1.0 DEBUG=on NAME="Happy Feet" // VOLUMES挂载
​
// EXPOSE 端口暴露 
EXPOSE <端口1> [<端口2>...]

Dockerfile 文件示例

// 1、创建 Dockerfile
mkdir mynginx
cd mynginx
vim Dockerfile
​
// 2、输入以下内容并保存:
FROM nginx
RUN echo '<h1>Hello, Docker!</h1>' > /usr/share/nginx/html/index.html
​
// 在 Dockerfile 目录下执行,生成新的自定义 images
docker build -t nginx:v3 .
上一篇
下一篇