Docker实践指南03-制作镜像及启动

制作Nginx镜像

1. 编写Dockerfile

# 基础镜像
FROM hub.c.163.com/library/nginx
# 编写者信息
MAINTAINER zheqing.wang "azheemail@163.com"
# 增加只读层,加载自己的资源
ADD dist /usr/share/nginx/html
# 设置服务器环境编码
ENV LANG en_GB.utf8
# 拷贝ngnix配置文件
COPY nginx.conf /etc/nginx/nginx.conf
# 曹蓓vin安装包
COPY vim-deb/ /opt
# 时间时区改为上海时区
RUN yes|cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
# 安装vim
RUN dpkg -i /opt/*

2. 制作镜像

docker build -t wzq/nginx:1.0 .

3. 启动镜像

docker run --name kraken-nginx -p 2018:2018 --rm -d wzq/nginx:1.0

Dockerfile指令

指令(常用命令加粗) 说明
FROM 指定所创建镜像的基础镜像
RUN 运行命令
CMD 指定启动容器时默认执行的命令
LABEL 指定生成镜像的元数据标签信息
EXPOSE 声明镜像内服务所监听的端口
ENV 指定环境变量
ADD 赋值指定的路径下的内容到容器中的路径下,可以为URL;如果为tar文件,会
COPY 赋值本地主机的路径下的内容到容器中的路径下;一般情况下推荐使用COPY而不是ADD
ENTRYPOINT 指定镜像的默认入口
VOLUME 创建数据挂载点
USER 指定运行容器时的用户名或UID
WORKDIR 配置工作目录
ARG 指定镜像内使用的参数(例如版本号信息等)
ONBUILD 配置当前所创建的镜像作为其他镜像的基础镜像时,所执行的创建操作的命令
STOPSIGNAL 容器退出的信号
HEALTHCHECK 如何进行健康检查
SHELL 指定使用SHELL时的默认SHELL类型