zoukankan      html  css  js  c++  java
  • 【docker】Dockerfile

    【docker】Dockerfile

    转载:

    =============================================================

    =============================================================

    命令

    ARG 定义创建镜像过程中使用的变量
        ARG <name>[=<defaul value>] 在执行docker build时,可以通过-build-arg[=]来为变量赋值
    FROM 指定所创建镜像的基础镜像
        FROM <image> [AS <name>]
        FROM <image>:<tag> [AS <name>]
        FROM <image>@<digest> [AS <name>]
    LABEL 为生成的镜像添加元数据标签信息
        LABEL <key>=<value> <key>=<value> <key>=<value>
    EXPOSE 声明镜像内服务监听的端口
        EXPOSE <port> [<port>/<protocol>...]
    ENV 指定环境变抵
        ENV <key> <value>
    ENTRYPOINT 指定镜像的默认入口命令
        ENTRYPOINT ["executable", "param1 ", "param2"]: exec 调用执行
        ENTRYPOINT command param1 param2: shell 中执行
    VOLUME 创建一个数据卷挂载点
        VOLUME ["/data"]
    USER 指定运行容器时的用户名或UID
        USER daemon
    WORKDIR 配置工作目录
        WORKDIR /path
    ONBUILD 创建子镜像时指定自动执行的操作指令
    STOPSIGNAL 指定退出的信号值
    HEALTHCHECK 配置所启动容器如何进行健康检查
    SHELL 指定默认shell类型
        SHELL [” executable”,”parameters ”]默认值为["/bin/sh","-c"]
    RUN 运行指定命令
        RUN <command>
        RUN ["executable","param1","param2"]
    CMD 启动容器时指定默认执行的命令
        CMD ["executable","param1","param2"]
        CMD command paraml param2
        CMD ["param1","param2"]
    ADD 添加内容到镜像
        ADD <src> <dest>
    COPY 复制内容到镜像
        COPY <src> <dest>

    拉去官方 java8 镜像

    docker pull java:8

    方式一

    打包 spring boot 应用

    编辑 Dockerfile

    FROM java:8
    LABEL maintainer ycx
    VOLUME /tmp
    ADD demo-service-0.0.1.jar demo.jar
    RUN sh -c 'touch /demo.jar'
    EXPOSE 9900
    ENV JAVA_OPTS=""
    ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /demo.jar" ]

    加了 EXPOSE 9900 后 -P 才能随机分配端口

    FROM java:8
    LABEL author=ycx
    VOLUME /tmp
    RUN mkdir /ycx
    COPY demo-service-0.0.1.jar /ycx/demo.jar
    EXPOSE 9900
    ENTRYPOINT ["java", "-Djava.security.egd=file:/dev/./urandom", "-jar", "/ycx/demo.jar"]

    命令格式

    docker build [options] path

    使用.当前目录的 Dockerfile 创建镜像,标签为 ycx/demo:1

    docker build -t ycx/demo:1 .

    也可指定文件

    docker build -t ycx/demo:1 -f /ycx/Dockerfile .
    docker run -d -p 0.0.0.0::9900 --name demo demo-service

    方式二

  • 相关阅读:
    计算机相关单位换算关系的积累
    谈编程资料
    杂记toCSV
    [转载]Windows 8][Metro Style Apps]淺談Metro Style Apps的瀏覽模式及螢幕解析度
    [转载][Windows 8][Metro Style Apps]Windows 8 開發/執行環境概觀
    【转载】[Windows 8]Hello Windows 8 Windows 8 Developer Preview搶先預覽
    台湾dotnet程序员之家
    [转载]实现Application Tile 更新
    [转载]在.NET中实现OAuth身份认证
    杂记
  • 原文地址:https://www.cnblogs.com/yangchongxing/p/11491259.html
Copyright © 2011-2022 走看看