当前位置:首页 » 《资源分享》 » 正文

【docker】compose 使用 .env 文件

27 人参与  2024年10月10日 12:40  分类 : 《资源分享》  评论

点击全文阅读


在 Docker Compose 中,你可以使用 .env 文件来定义环境变量,这些变量可以在 docker-compose.yml 文件中被引用。这允许你轻松地管理配置,而不需要硬编码值到你的 Compose 文件中。

以下是如何在 Docker Compose 中使用 .env 文件的步骤:

创建 .env 文件

在你的项目根目录下创建一个名为 .env 的文件,并定义你想要使用的环境变量。例如:

# .envDB_HOST=dbDB_USER=rootDB_PASS=secret

在 docker-compose.yml 中引用环境变量

在你的 docker-compose.yml 文件中,你可以使用 ${VARIABLE_NAME} 语法来引用 .env 文件中定义的环境变量。例如:

# docker-compose.ymlversion: '3'services:  web:    image: "webapp:${TAG}"    environment:      - DB_HOST=${DB_HOST}      - DB_USER=${DB_USER}      - DB_PASS=${DB_PASS}  db:    image: "mysql:5.7"    environment:      - MYSQL_ROOT_PASSWORD=${DB_PASS}

在这个例子中,TAGDB_HOSTDB_USER 和 DB_PASS 都是从 .env 文件中获取的。

运行 Docker Compose

现在,当你运行 docker-compose up 命令时,Docker Compose 会自动加载 .env 文件中的环境变量,并将它们应用到你的服务配置中。

docker-compose up -d

注意事项

.env 文件不应该被提交到版本控制系统中,因为它可能包含敏感信息。你应该将 .env 文件添加到 .gitignore 文件中,以确保它不会被意外提交。

如果你在命令行中定义了与 .env 文件中相同名称的环境变量,命令行中的值将覆盖 .env 文件中的值。

Docker Compose 会自动加载项目根目录下的 .env 文件。如果你想要加载其他位置的 .env 文件,可以使用 --env-file 选项:

docker-compose --env-file /path/to/myenvfile up

环境变量是按顺序解析的,这意味着如果多个 .env 文件中定义了相同的变量,最后一个被加载的文件中的值将覆盖之前的值。

通过使用 .env 文件,你可以轻松地管理 Docker Compose 项目的配置,同时保持配置的灵活性和安全性。





点击全文阅读


本文链接:http://zhangshiyu.com/post/169979.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最新文章

  • 裴总背叛后,夫人死遁了优质全文_裴云舟清瑶沈梦常读_小说后续在线阅读_无删减免费完结_
  • 和纨绔闪婚抖音热门_妹妹富少结局+番外_小说后续在线阅读_无删减免费完结_
  • 以爱之名赴你劫局+结局+畅读(云汀季安辰)_以爱之名赴你劫局+结局+畅读
  • (头条)今望沧桑忆往昔小说(陆长庚苏揽月)整本免费版阅读无广告(今望沧桑忆往昔)
  • 我转岗做文员后,自称尸语者的男友小青梅急了新书(江晚晴陆景行韩依依)_我转岗做文员后,自称尸语者的男友小青梅急了新书
  • 全书免费江晚晴陆景行韩依依新鲜出炉_江晚晴陆景行韩依依新鲜出炉全书免费
  • 被杀神借尸还魂后,虐杀我的小舅舅悔疯了惊天黑幕_林景辰沈芸林念后续加长_小说后续在线阅读_无删减免费完结_
  • 沈菡楼逸尘小说(沈菡楼逸尘)(偷藏孕肚嫁权臣,和离后渣夫悔疯了)前传+阅读全新作品预订
  • 你是恩赐也是劫节选(向知黎程景妄)全书免费_(向知黎程景妄)你是恩赐也是劫节选后续(向知黎程景妄)
  • 完结文你是恩赐也是劫节选列表_完结文你是恩赐也是劫节选(向知黎程景妄)
  • 京圈佛子抽签挑老婆,我改嫁他人完结版_傅长歌裴书卿常读_小说后续在线阅读_无删减免费完结_
  • 烈焰如歌不可闻隐藏剧情_谢归舟最新章节_小说后续在线阅读_无删减免费完结_

    关于我们 | 我要投稿 | 免责申明

    Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1