wjxos.github.io

虚拟化技术 – docker


**重点--docker交互模式** 
* 启动交互式容器
```jshelllanguage
docker run -it --name test centos

将运行的数据持久化,容器之间数据共享

DockerFile

  1. docker build
    docker build -f /路径/Dockerfile -t 包名/镜像名 .
    docker run -it 包名/镜像名
    docker inspect //查看执行结果
    
    • Dockerfile构建
  2. 保留字指令
    FROM //基础镜像,当前新镜像给予那个镜像的
    MAINTAINER //镜像维护者的姓名和邮箱
    RUN //容器构建时需要运行的命令
    EXPOSE //当前容器对外暴露端口 
    WORKDIR //指定创建容器后,终端默认登录进来的工作目录,一个落脚点
    ENV //用来构建镜像过程中设置环境变量 如:ENV MY_PATH /usr/mytest 被引用:WORKDIR $MY_PATHA
    ADD //COPY + 解压
    COPY //只有copy 类似ADD
    VOLUME //容器数据卷,用于保存和持久化工作
    CMD //容器启动命令,Dockerfile中可以有多个CMD指令但只有最后一个生效,CMD会被docker run 之后的参数替换
    ENTRYPOINT //容器启动时的命令,ENTRYPOINT的目的和CMD一样,都是指定容器程序及参数
    ONBUILD //当构建一个被继承的Dockerfile是运行命令,父镜像在被子镜像继承后,父镜像的onbuild被触发