mkdir lgz_dockerfiletest
cd lgz_dockerfiletest/
vim Dockerfile #不可改文件名
ARG version=7
#基础镜像
FROM centos:${version}
# 添加多个标签信息
LABEL version="1.0" author="lgzdockerfile" date="2022-1-19" description="liudockerfile ..."
# 环境变量
ENV APP_VERSION=1.0.0 APP_HOME=/usr/local/app author="lgzapp1"
RUN mkdir /lgzvolume
RUN echo "hello,lgz" > /lgzvolume/greeting
#创建数据卷
VOLUME ["lgzdata1","/lgzvolume"]
#设置工作目录
WORKDIR /lgzdir
RUN echo "hello world,19" > hello.txt
#设置onbuild指令
ONBUILD RUN mkdir /vdata3
ONBUILD RUN echo "hello data3" > /vdata3/hello
#ADD addtest.tar /
#COPY addtest.tar /
#运行镜像创建容器时执行的命令
CMD ["/bin/bash"]
docker build -t build_lgzadd:19.1 . #注意后面的点表示当前目录
docker run -it --name "lgzdockerfile" afbf #afbf是镜像id,lgzdockerfile是容器名
Dockerfile 实例
构建一个nginx镜像
1.创建上下文环境并创建首页文件
mkdir nginx && cd nginx
echo 'hello docker' > index.html
2.编写Dockerfile
vim Dockerfile
FROM centos:7
MAINTAINER AZ
RUN yum install -y wget
RUN wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
RUN yum install -y nginx
RUN echo "daemon off;" >> /etc/nginx/nginx.conf
ADD index.html /usr/share/nginx/html/index.html
EXPOSE 80
CMD /usr/sbin/nginx
3.构建镜像
docker build -t nginx:v1.0 .
4.运行镜像
docker run -d -p 82:80 --name dockerfile_nginx nginx:v1.0
curl localhost:82