加入收藏 | 设为首页 | 会员中心 | 我要投稿 应用网_阳江站长网 (https://www.0662zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营中心 > 建站资源 > 优化 > 正文

云计算核心技术Docker教程:docker-compose配置环境变量

发布时间:2020-09-25 23:16:45 所属栏目:优化 来源:TechWeb.com.cn
导读:在项目中,使用docker-compose配置环境变量可以控制不同的条件和使用场景。本文主要介绍docker-compose如何配置环境变量。 方式一:在Dockerfile中设置环境变量 ENV 必须写死.不灵活 只能在构建镜像的时候设置的环境变量 方式二:在docker-compose.yml中设置

在项目中,使用docker-compose配置环境变量可以控制不同的条件和使用场景。本文主要介绍docker-compose如何配置环境变量。

方式一:在Dockerfile中设置环境变量

ENV

必须写死.不灵活

只能在构建镜像的时候设置的环境变量

方式二:在docker-compose.yml中设置环境变量

environment:

       MYSQL_DATABASE: "my_database"

       MYSQL_PASSWORD: "mysql"

这里的环境变量为启动容器时,传入容器的环境变量

此时镜像已经构建完成

方式三:结合Dockerfile、docker-compose.yml和.env设置环境变量

Dockerfile:

          ARG MYSQL_DATABASE

docker-compose.yml:

                  services:

                    db:

                        build:

                             context: mysql

                              args:

                                      MYSQL_DATABASE: ${MYSQL_DATABASE}

.env:

       MYSQL_DATABASE=mydatabase

必须使用docker-compose build db 才能自动去.env中寻找同名环境变量

docker-compose.ym和.env和l必须在同一目录下,不然waring:找不到环境变量

如果build标签和images标签同时存在,则去build目录下寻找Dockerfile构建镜像,容器名字为image后面的名字.

如果只有images标签,则在当前系统中寻找镜像,如果找不到,则自动pull

以DOCKER_开头的变量和用来配置 Docker 命令行客户端的使用一样。如果使用 boot2docker , $(boot2docker shellinit) 将会设置它们为正确的值。

COMPOSE_PROJECT_NAME

设置通过 Compose 启动的每一个容器前添加的项目名称,默认是当前工作目录的名字。

COMPOSE_FILE

设置要使用的 docker-compose.yml 的路径。默认路径是当前工作目录。

DOCKER_HOST

设置 Docker daemon 的地址。默认使用 unix:///var/run/docker.sock,与 Docker 客户端采用的默认值一致。

DOCKER_TLS_VERIFY

如果设置不为空,则与 Docker daemon 交互通过 TLS 进行。

DOCKER_CERT_PATH

配置 TLS 通信所需要的验证(ca.pem、cert.pem 和 key.pem)文件的路径,默认是 ~/.docker 。

(编辑:应用网_阳江站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!