dockerfile 入门级小实验:
dockerfile:
FROM
nginx
MAINTAINER
dkey
ENV
RUN_USER nginx
ENV
RUN_GROUP nginx
ENV
DATA_DIR /data/web
ENV
LOG_DIR /data/log/nginx
RUN
mkdir /data/log/nginx
-p
RUN
chown nginx.nginx
-R
/data/log/nginx
ADD
web /data/web
ADD
nginx.conf
/etc/nginx/nginx.conf
ADD
default.conf
/etc/nginx/conf.d/default.conf
EXPOSE
80
ENTRYPOINT
nginx -g
"daemon off;"
做了这么几件事:
1、拉取一个nginx镜像。
2、设置了几个变量。
3、创建了几个需要的目录。
4、把当前目录下的web程序复制到镜像的/data/web目录。
5、把nginx.conf配置文件和default.conf配置文件复制到镜像中。
6、设置一个默认端口。
7、最后设置了容器启动时执行的命令,我用来启动nginx程序,注意这个命令不能错,不然容器启动不了。这样设置后,当你docker run运行此镜像时不需要在后面再次执行需要执行的命令了。
$
docker build
-t
nginx_02
.
docker
run --name
nginx_01 -d
-p
80:80
nginx_01