您的位置:58编程 > dockerfile环境变量配置 Docker Fig环境变量参考

dockerfile环境变量配置 Docker Fig环境变量参考

2023-03-19 02:33

dockerfile环境变量配置 Docker Fig环境变量参考

dockerfile环境变量配置

Dockerfile环境变量配置是构建Docker镜像的一个重要步骤,它可以帮助我们在容器中设置各种环境变量,以便在运行时使用。

Dockerfile中的ENV指令用于设置环境变量,它有两个参数:变量名和变量值。例如:

ENV MY_VARIABLE "Hello World"

上面的指令将创建一个名为MY_VARIABLE的环境变量,其值为“Hello World”。我们也可以使用多行语法来设置多个环境变量:

ENV MY_VARIABLE1 "Hello World" \ 
    MY_VARIABLE2 "Goodbye World" \ 
    MY_VARIABLE3 "Foo Bar"

我们还可以使用ARG指令来传递命令行参数到Dockerfile中。例如:

FROM ubuntu:latest 
ARG MY_VARIABLE="default value" 
ENV MY_VARIABLE $MY_VARIABLE

上面的指令将创建一个名为MY_VARIABLE的环境变量,其默认值是“default value”。如果我们在运行docker build命令时添加--build-arg选项并提供新的MY_VARIABLE的值(例如--build-arg MY_VARIABLE="new value" ),则新的MY_VARIABLE将覆盖原始默认值。


此外,我们还可以使用RUN指令来执行shell命令并设置新的环境变量。例如:

RUN export NEW_ENVIRONMENT="foo bar" 

最后,我们还应该注意到Dockerfile中定义的所有环境变量都是在容器内部共享的。因此,当我们在一个容器中设置了一些特定的环境变量时(例如通过RUN export命令或者ENV构造函数来设置一些特定的字段/字段对应关系时) ) ) ) ) ) ) ) ) )  ̄ 如果你想要在不同容易之间共享这些信息,你就必须将这些信息写入docker-compose.yml文件,然后将该文件添加到你想要使用该信息的所有容易中.


总之, Dockerfile 环 境 变 量 配 置 时 构 建 Docker 镜 像 的 非 常 重 要 的 步 骤, 其 运 用 EN V、 AR G、 RUN 来 进 行 环 境 变 量 的 赋 值 , 这 三 种 方 法 本 质 上 没 有 大 的 差 别 , 但 我 也 要 注 意 , EN V、 AR G、 RUN 这 三 种 方 法 本 质 上 有 大 的 差 别 , EN V、 AR G、 RUN 需 要根 据不同情况来选用不同方法.


Docker Fig环境变量参考

*注意: 现在已经不推荐使用环境变量链接服务。替代方案是使用链接名称(默认就是被连接的服务名字)作为主机名来链接。详情查看 fig.yml章节。

Fig 使用 Docker 链接来暴露一个服务的容器给其它容器。每一个链接的容器会注入一组以容器名称的大写字母开头得环境变量。

查看一个服务有那些有效的环境变量可以执行 fig run SERVICE env

name_PORT

完整URL,例如: DB_PORT=tcp://172.17.0.5:5432

name_PORT_num_protocol

完整URL,例如: DB_PORT_5432_TCP=tcp://172.17.0.5:5432

name_PORT_num_protocol_ADDR

容器的IP地址,例如: DB_PORT_5432_TCP_ADDR=172.17.0.5

name_PORT_num_protocol_PORT

暴露端口号,例如: DB_PORT_5432_TCP_PORT=5432

name_PORT_num_protocol_PROTO

协议(tcp 或 udp),例如: DB_PORT_5432_TCP_PROTO=tcp

name_NAME

完整合格的容器名称,例如: DB_1_NAME=/myapp_web_1/myapp_db_1

阅读全文
以上是58编程为你收集整理的dockerfile环境变量配置 Docker Fig环境变量参考全部内容。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。
相关文章
© 2024 58编程 58biancheng.com 版权所有 联系我们
桂ICP备12005667号-32 Powered by CMS