zoukankan      html  css  js  c++  java
  • 一文快速了解Dockerfile

    一、Dockerfile是什么?

      Dockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。

           

    二、Dockerfile文档

    1.  拉取基础镜像文件
    FROM java:8
    
    2. 服务数据目录挂载到宿主机
    docker volume  create test_data
    VOLUME test_data:/data 
    容器停止删除; 数据不会丢失
    tip: docker run -v volume:/containerpath
    3. 添加文件 ADD xx.tar.gz / ; 会自动解压 CP xx.tar.gz / ;不会自动解压 4. 执行启动命令 ENTRYPOINT ['command and arguments']
    # 示例
    # Docker image for springboot file run # VERSION 0.0.1 # Author: eangulee FROM java:8 # VOLUME 指定了临时文件目录为/tmp。 # 其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到容器的/tmp VOLUME /tmp # 将jar包添加到容器中并更名为app.jar ADD ./springBootAdmin.tar.gz / WORKDIR /springBootAdmin/ # 运行jar包 RUN bash -c 'touch /springBootAdmin/springBootAdmin.jar' ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/springBootAdmin/springBootAdmin.jar"]

    三、docker与Dockerfile

         在docker环境下执行build命令,根据Dockerfile文件生成docker镜像

    docker build -t  imagename:tag
    docker images //查看镜像

    四、常见问题

    1.  docker运行失败
       docker logs  containerId 查看容器运行日志
    
    2. springBoot程序启动端口不对应
       检查Dockerfile的java运行目录位置

    如果觉得文章对您有用,请点下推荐。您的支持将鼓励我继续创作!

  • 相关阅读:
    文件操作:Directory,File,FielStream、StreamRead和StreamWriter的使用
    MVC中Excel导入
    T对象序列化后T对象中属性字段不见了?
    Sql游标
    Form表单提交
    AJAX异步删除操作
    数据库表结构导出sql语句
    多线程的使用
    找不到dll原因
    代码优化
  • 原文地址:https://www.cnblogs.com/pengsn/p/14704927.html
Copyright © 2011-2022 走看看