Docker入门笔记(慕课网)

3.1 Dockerfile介绍

1.创建一个新文件夹,写Dockerfile

  1. mkdir dl #创建文件夹
  2. cd dl
  3. ls
  4. touch Dockerfile #touch创建文件

2.用vim在Dockerfile中写内容

  1. vim Dockerfile
  2. i #在vim中做插入操作
  3. FROM alpine:latest
    MAINTAINER TAO
    CMD echo "Good Morning,My Angel"
  4. 按ESC退出编辑模式
  5. 输入:wq退出并保存

3.构建image

  1. docker build -t goodmorning .

    build为构建镜像
    -t 为给image一个标签,为goodmoring
    最后有一个.,为路径名,即把该路径下的所有文件,传给 docker engine,让它产生一个image
  2. 回车运行

Docker入门笔记(慕课网)

4.查看和运行image

  1. docker images 查看是否有生成刚才的image

  2. docker run goodmorning

Docker入门笔记(慕课网)

3.2dockerfile实战

1.创建一个新文件夹,写Dockerfile

  1. mkdir dockerfile2 #创建文件夹
  2. cd dockerfile2
  3. ls
  4. touch Dockerfile #touch创建文件

Docker入门笔记(慕课网)

2.用vim在Dockerfile中写内容

  1. vim Dockerfile
  2. i #在vim中做插入操作
  3. FROM ubuntu
    MAINTAINER TAO
    RUN apt-get update
    RUN apt-get install -y nginx
    COPY index.html /var/www/html
    ENTRYPOINT ["/usr/sbin/nginx","-g","daemon off;"]
    EXPOSE 80

    基础镜像ubuntu
    apt-get更新ubuntu
    安装 nginx,-y安装过程中不要来提醒我
    拷贝 index.html到容器路径中/var/www/html
  4. 按ESC退出编辑模式
  5. 输入:wq退出并保存

3.写html

  1. touch index.html
  2. vi index.html
  3. Good Morning,My Angel
  4. 退出保存

4.构建image

  1. docker build -t goodmorning2 .

    build为构建镜像
    -t 为给image一个标签,为goodmoring
    最后有一个.,为路径名,即把该路径下的所有文件,传给 docker engine,让它产生一个image
  2. 回车运行

5. 运行

docker run -d -p 80:80 goodmorning2

Docker入门笔记(慕课网)

Docker入门笔记(慕课网)

3.2.1Dockerfile语法

命令 用途
FROM base image
RUN 执行命令
ADD 添加文件
COPY 拷贝文件
CMD 执行命令
EXPOSE 暴露端口
WORKDIR 指定路径
MAINTAINER 维护者
ENV 设定环境变量
ENTRYPOINT 容器入口
USER 指定用户
VOLUME mount point

3.3镜像分层

Docker入门笔记(慕课网)

Docker入门笔记(慕课网)