当前位置:首页 > PS视频 > 正文内容

如何在 Compose 文件中配置环境变量?

编辑3个月前 (04-28)PS视频52

# Docker Compose 环境变量配置|最全 4 种用法(直接复制可用) Compose 配置环境变量非常简单,**支持直接写、支持外部文件、支持混合使用**,我给你整理**最常用、最安全、最规范**的写法,新手直接照抄。 --- ## 一、最常用:直接写在 docker-compose.yml 里 适合简单、少量环境变量。 ```yaml version: '3.8' services:  mysql:    image: mysql:8.0    # 环境变量配置    environment:      MYSQL_ROOT_PASSWORD: 123456      MYSQL_DATABASE: mydb      TZ: Asia/Shanghai ``` ### 两种写法都可以 ```yaml # 写法1(键值对,推荐) environment:  KEY: VALUE # 写法2(数组) environment:  - KEY=VALUE ``` --- ## 二、最安全:使用外部 .env 文件(企业标准) **密码、密钥绝对不能写在 yml 里**,必须放 `.env` 文件。 ### 1)创建文件 `.env`(和 docker-compose.yml 同目录) ```env # .env 文件 MYSQL_PASSWORD=123456 MYSQL_DB=mydb REDIS_PASS=123456 TZ=Asia/Shanghai ``` ### 2)在 compose 中引用 ```yaml services:  mysql:    image: mysql:8    environment:      MYSQL_ROOT_PASSWORD: ${MYSQL_PASSWORD}      MYSQL_DATABASE: ${MYSQL_DB} ``` **自动加载**,不需要额外配置,Compose 会自动读 `.env`。 --- ## 三、指定自定义 env 文件(多环境必备) 如果你有: - `.env.dev` - `.env.prod` - `.env.test` 可以在 yml 里指定: ```yaml services:  api:    image: myapp    env_file:      - .env.dev ``` 或多个: ```yaml env_file:  - .env.common  - .env.prod ``` --- ## 四、运行时传入环境变量(临时覆盖) 启动时直接覆盖,优先级最高: ```bash MYSQL_PASS=654321 docker-compose up -d ``` --- # 环境变量优先级(重要!) 1. **运行时传入**(最高) 2. **docker-compose.yml 里写的 environment** 3. **env_file 指定的文件** 4. **.env 默认文件** 5. **镜像内部默认变量**(最低) --- # 最规范企业级模板(直接用) ## docker-compose.yml ```yaml version: '3.8' services:  mysql:    image: mysql:8.0    environment:      MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}      MYSQL_DATABASE: ${MYSQL_DATABASE}      TZ: ${TZ}    volumes:      - mysql-data:/var/lib/mysql    restart: always  redis:    image: redis:alpine    command: redis-server --requirepass ${REDIS_PASSWORD}    environment:      TZ: ${TZ} volumes:  mysql-data: ``` ## .env ```env MYSQL_ROOT_PASSWORD=123456 MYSQL_DATABASE=appdb REDIS_PASSWORD=123456 TZ=Asia/Shanghai ``` --- ## 常用环境变量速查(直接复制) ### MySQL ``` MYSQL_ROOT_PASSWORD MYSQL_DATABASE MYSQL_USER MYSQL_PASSWORD TZ=Asia/Shanghai ``` ### Redis ``` REDIS_PASSWORD ``` ### Nginx / Java / Node ``` TZ=Asia/Shanghai SPRING_PROFILES_ACTIVE=prod NODE_ENV=productio

扫描二维码推送至手机访问。

版权声明:本文由手机数据加工厂发布,如需转载请注明出处。

本文链接:https://cryp6.com/?id=187

“如何在 Compose 文件中配置环境变量?” 的相关文章

微信记录彻底备份教程,换手机一键迁移

全程不用复杂操作,老人也能看懂,每一步都对应截图位置。一、手机直接互传(换手机首选,免费最快)适合:旧手机换新手机、当场迁移所有聊天1新旧手机都连上同一个 WiFi,登录同一个微信号2打开微信 → 点【我】→【设置】3找到【通用】→【聊天记录迁移与备份】4选择【迁移聊天记录到另一台设备】5旧手机勾选...

无线传文件很慢?

无线传文件很慢?原因 + 解决办法(简洁科普版)一、变慢主要原因连接的是2.4G 低频 WiFi,网速本身就慢、干扰多。手机和电脑距离太远、隔墙,信号变弱。同一网络设备太多,WiFi 拥堵卡顿。用微信、QQ 传输,系统会压缩文件,还限速。后台下载、刷视频占用网速,挤占传输速度。二、快速提速方法切换连...

 如何在电脑上关闭云同步功能?

如何在电脑上关闭云同步功能?

下面分 Windows 和 Mac,把系统自带云同步和 ** 常见第三方云盘(OneDrive/iCloud/ 百度网盘)** 都一次性关掉,适合你要 “改记录不被覆盖” 的场景。Windows 电脑:关闭所有云同步1. 先关 OneDrive(最关键)右下角任务栏,找到蓝色云朵 OneDrive...

 如何在华为云盘上彻底删除云端数据?

如何在华为云盘上彻底删除云端数据?

下面按 “先关同步→网页端删文件→清空最近删除→清其他云数据→收尾防恢复”,把华为云盘彻底删干净,且不影响本地文件。一、手机端:先关闭所有同步(必做)打开 设置 → 华为账号 → 云空间。关闭 云盘、图库、备忘录、联系人 等所有同步开关。弹窗选 保留在本机,避免本地文件被删。关闭 自动备份、数据同步...

为什么 AI 游戏更适合鸿蒙?

AI 游戏更适合鸿蒙,核心是:微内核 + 分布式 + 系统级 AI + 软硬协同,正好匹配 AI 游戏 “高实时、大算力、多设备、动态内容” 的需求,比安卓 /iOS 更贴合、更稳、延迟更低。一、底层架构:天生为高实时 AI 推理设计微内核 + 高性能调度:比宏内核(安卓)延迟更低、更稳,AI 推理...

Windows 密码破解

首先必须严肃说明:未经授权破解他人 Windows 密码属于违法行为,涉嫌违反《中华人民共和国刑法》第 285 条(非法获取计算机信息系统数据罪)、《网络安全法》等法律法规,同时违背道德准则,会面临法律责任与民事赔偿。以下内容仅适用于你合法拥有、忘记密码的自有设备,用于合法的密码重置与恢复,绝非 “...

发表评论

访客

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