Docker Dockerfile的使用实例
Dockerfile
FROM基础镜像
MAINTAINER维护这信息
RUN运行什么命令,在命令前面加上RUN
ADD往里面加点文件,copy文件,会自动解压
WORKDIR当前的工作目录
VOLUME目录挂载
EXPOSE开放的端口
RUN进程要一直运行
实战:构建nginx
wget http://xiazai.jb51.net/201611/yuanma/nginx-1.9.3(jb51.net).rar
wgetftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.38.tar.gz
#ThisisMyfirstDockerfile#version1.0 #Author:hh #Baseimage基础镜像 FROMcentos #MAINTAINER维护者信息 MAINTAINERhhWang #ADD ADDpcre-8.38.tar.gz/usr/local/srcADDnginx-1.9.3.tar.gz/usr/local/src #RUN RUNyum-yinstallwgetgccgcc-c++makeopensslopenssl-devel RUNuseradd-s/sbin/nologin-Mwww #WORKDIR WORKDIR/usr/local/src/nginx-1.9.3 RUN./configure--prefix=/usr/local/nginx--user=www--group=www--with-http_ssl_module--with-http_stub_status_module\ --with-pcre=/usr/local/src/pcre-8.38&&make&&makeinstall RUNecho"daemonoff;">>/usr/local/nginx/conf/nginx.conf #ENV定义环境变量 ENVPATH/usr/local/nginx/sbin:$PATH #EXPOSE映射端口 EXPOSE80CMD["nginx"]
dockerbuild-twhh/nginx-file:v1.
dockerrun-d-it-p93:80--namenginxwhh/nginx-file:v1
下面再看下dockerfile的使用
通过dockerbuild命令可以建立镜像。
通常需要文本文件Dockerfile,例子如下:
fromhub.c.163.com/library/nginx----基于的镜像
runecho"helloworld">/etc/nginx/index.xml----追加到index.html末尾
expose80---暴露80端口
cmd'nginx'----启动nginx服务
保存后,运行dockerbuild-tmynginx:1.0.
然后运行dockerimages,查看到所构建的镜像。
通过dockerrun-d-p8082:80--namenginx_webmynginx:1.0
最后通过http://ip:8081访问到nginx的index.html的内容