• Docker之三:Dockerfile镜像


    一、自动部署应用

     1.自建docker-web项目,存入/usr/image/first-dockerfile

    #构建应用镜像  最后一个.是当前目录路径
    docker build -t helq3.com/mywebapp:1.0 .

     Dockerfile内容

    #设置基准镜像
    FROM tomcat:latest
    MAINTAINER helq3.com
    #切换工作目录,不存在则创建
    #cd /usr/local/tomcat/webapps
    WORKDIR /usr/local/tomcat/webapps
    #复制目录下的所有文件到容器目录
    ADD docker-web ./docker-web

    2.查看镜像,创建容器:docker run -d -p 8001:8080 helq3.com/mywebapp:1.0,然后网页查询(乱码没力气改了,以后再说)

     

     二、镜像分层(layer)

    1.

    三、镜像命令

     

     

     

    docker build: 创建镜像  RUN执行在构建镜像时执行命令

    docker run:创建容器 CMD|ENTRYPOINT 在容器创建时执行命令

     

     Shell命令:会创建子进程,子进程结束则回到主进程

    Exec命令:创建新进程覆盖主进程,新进程结束则结束

    ENTRYPOINT一定会被运行,而CMD命令不一定会运行

      

     测试:

      创建文件夹:mkdir docker_run    文件下:vim Dockerfile 

      FROM centos

      RUN ["echo","image building!!"]

      ENTRYPOINT ["ps"]       

      CMD ["-ef"]

      构建镜像:docker build -t helq3.com/docker_run .        --image building!!

      运行:docker run helq3.com/docker_run     --ps -ef

     四、dockerfile构建redis镜像 --练习指令

    1.redis相关的两个文件拖到image下

    2.vim Dockerfile

    FROM centos   
    RUN ["yum","install","-y","gcc","gcc-c++","net-tools","make"]
    WORKDIR /usr/local
    ADD redis-4.0.14.tar.gz .
    WORKDIR /usr/local/redis-4.0.14/src
    RUN make && make install
    WORKDIR /usr/local/redis-4.0.14
    ADD redis-7000.conf .
    EXPOSE 7000       #释放7000端口
    CMD ["redis-server","redis-7000.conf"]     #起服务

    3.docker build -t helq3.com/docker-redis .

    4.docker run -p 7000:7000 helq3.com/docker-redis   

    5已有的镜像 docker images  正在运行的服务 docker ps  跳到redis-4.0.14目录下查看 新增redis-7000.conf

     6.hub.docker.com最简单    拉取最新:docker pull redis   运行:docker run redis 

  • 相关阅读:
    产品 | What's产品经理
    产品 | 互联网+“加油”
    微信小程序 | 未来O2O电商的“阴谋”
    推荐书籍 | 产品必备书籍
    iOS | NSProxy
    iOS | 解决中文乱码
    HTML DOM addEventListener() 方法
    给每个对象加上新的属性
    vue.config.js基础配置
    SEO要点
  • 原文地址:https://www.cnblogs.com/helq/p/14208443.html
Copyright © 2020-2023  润新知